View Full Version : سوال: مشکل فرم Login
mahdi_7610
چهارشنبه 23 تیر 1389, 01:51 صبح
سلام دوستان
قصد دارم واسه فرم لاگین کاربر یوزر و پسوورد را وارد کنه .
کد زیر را نمیدونم چه طور باید تنظیم کنم .
وقتی فقط یوزر باشه یا فقط پسوورد باشه مشکلی نیست اما وقتی هر دو هست چکار باید کرد؟
private void btnLogin_Click(object sender, EventArgs e)
{
OleDbConnection con = new OleDbConnection(strcon);
OleDbCommand cmd = con.CreateCommand();
con.Open();
cmd.CommandText = "SELECT * FROM tblLogin";
if (cmd.ExecuteScalar().ToString() == txtUser.Text && cmd.ExecuteScalar().ToString() == txtPass.Text)
{
MainForm frmMainForm = new MainForm();
frmMainForm.ShowDialog();
}
else
{
MessageBox.Show("کاربر گرامی نام کاربری یا رمز عبور وارد شده فاقد اعتبار می باشد ","خطا", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
con.Close();
}
mmd2009
چهارشنبه 23 تیر 1389, 02:01 صبح
با سلام
دوست عزیز در چنین مواقعی ابتدا جستجو بر اساس جدول صورت میگیره مثل کد زیر
select * from [نام جدول] ;
و سپس با کدهای زیر عملیاتی مثل عملیات شما انجام میشه
OleDbDataReader re = cmd.ExecuteReader();
if(re.Read())
{
if (textBox1.Text == re.GetValue(0).ToString() && textBox1.Text == re.GetValues(1).ToString())
MessageBox.Show("خوش امدید");
else
MessageBox.Show("نام کاربری یا رمز عبور اشتباه است");
}
ahrimaneahurai
چهارشنبه 23 تیر 1389, 09:54 صبح
توی دستوری sql که دوستمون داد شرط رو هم بذار که یوزر و پسوردت چیه اگه reader پیدا کرد که login کن اگه نه که نبوده.البته این برای موقعی هست که پسورد رو هش نکرده باشی
beh_develop
چهارشنبه 23 تیر 1389, 10:10 صبح
مهدی جان می تونی این کد رو امتحان کنی :
public void DoLogOn(String userName, String userPass)
{
SqlConnection sqlConn = null;
SqlCommand cmd = null;
SqlDataReader dr = null;
StringBuilder query = new StringBuilder("Select * From Users Where UserName = @UserName And UserPass = @UserPass");
try
{
sqlConn = new SqlConnection(ConnectionString);
cmd = new SqlCommand(query.ToString(), sqlConn);
cmd.Parameters.Add("@UserName", System.Data.SqlDbType.VarChar, 16);
cmd.Parameters["@UserName"].Value = userName;
cmd.Parameters.Add("@UserPass", System.Data.SqlDbType.VarChar, 16);
cmd.Parameters["@UserPass"].Value = userPass;
sqlConn.Open();
dr = cmd.ExecuteReader(System.Data.CommandBehavior.Sing leRow);
if (dr.Read())
{
// کاربر معتبر بوده و رمز عبور صحیح می باشد و می توانید کنترل های دیگر از جمله کاربر امکان دسترسی به برنامه را داشته یا نه را چک کنید
}
else
{
throw new Exception("شناسه و / یا رمز عبور معتبر نمی باشد");
}
dr.Close();
}
finally
{
if (dr != null)
{
dr.Close();
dr.Dispose();
}
if (cmd != null)
cmd.Dispose();
if (sqlConn != null)
{
if (sqlConn.State == System.Data.ConnectionState.Open)
sqlConn.Close();
sqlConn.Dispose();
}
}
}
mahdi_7610
چهارشنبه 23 تیر 1389, 13:32 عصر
با سلام
دوست عزیز در چنین مواقعی ابتدا جستجو بر اساس جدول صورت میگیره مثل کد زیر
select * from [نام جدول] ;
و سپس با کدهای زیر عملیاتی مثل عملیات شما انجام میشه
OleDbDataReader re = cmd.ExecuteReader();
if(re.Read())
{
if (textBox1.Text == re.GetValue(0).ToString() && textBox1.Text == re.GetValues(1).ToString())
MessageBox.Show("خوش امدید");
else
MessageBox.Show("نام کاربری یا رمز عبور اشتباه است");
}
سلام
نحوه تغییر نام کاربری و رمز عبور به چه صورتی هست .
هر کدی نوشتم جواب نداد:عصبانی++:
mmd2009
چهارشنبه 23 تیر 1389, 17:13 عصر
دوست عزیز برای تغییر نام کاربری و رمز عبور اگر از دیتابیس استفاده میکنی باید دستور Update رو استفاده بکنی.
mahdi_7610
چهارشنبه 23 تیر 1389, 18:34 عصر
دوست عزیز برای تغییر نام کاربری و رمز عبور اگر از دیتابیس استفاده میکنی باید دستور Update رو استفاده بکنی.
سلام
هر کاری می کنم جواب نمیده .
این کد را نوشتم اما جواب نمیده .
private void btnEnter_Click(object sender, EventArgs e)
{
OleDbConnection Con = new OleDbConnection(strCon);
OleDbCommand Cmd = Con.CreateCommand();
Con.Open();
Cmd.CommandText = "SELECT * FROM tblPassword";
if(Cmd.ExecuteScalar().ToString() == txtOlduser.Text && Cmd.ExecuteScalar().ToString() == txtOldpass.Text)
{
Cmd.CommandText = "UPDATE tblPassword SET User1='" + txtNewuser.Text.Trim() + "', Pass1= '" + txtNewpass.Text.Trim() + "'";
Cmd.ExecuteNonQuery();
MessageBox.Show("عملیات تغییر رمز عبور با موفقیت انجام گرفت", "انجام عملیات", MessageBoxButtons.OK, MessageBoxIcon.Information);
Con.Close();
}
MessageBox.Show("عملی انجام نشد","خطا");
Con.Close();
}
با استفاده از کد شما هم نوشتم جواب نداد
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.