PDA

View Full Version : سوال: چگونگی نحوه ی ایجاد فرم ورود به برنامه



teardrop
سه شنبه 13 اردیبهشت 1390, 18:17 عصر
به نام خدا

با سلام
من در بانکم کاربرانی درست کردم و برای هر کدام از آنها مجوزهایی دادم. ولی نمیدونم چه طوری در اول برنامه (فرم ورود کاربر) نام کاربران و گذرواژه رو بگیرم که هم در بانک چنین کاربری وجود داشته باشد، و هم گذرواژه ای که وارد کرده درست هست یا نه؟
لطف کنید راه کارهای خودتون رو برای من بنویسید.
با تشکر

sara_aryanfar
سه شنبه 13 اردیبهشت 1390, 18:33 عصر
خوب شما باید اون نام کاربری و گذر واژه رو در بانک خودتون جستجو کنید در صورت نبود با پیغام مناسب به کاربر اطلاع بدین

payman_xxp
سه شنبه 13 اردیبهشت 1390, 21:54 عصر
به نام خدا

با سلام
من در بانکم کاربرانی درست کردم و برای هر کدام از آنها مجوزهایی دادم. ولی نمیدونم چه طوری در اول برنامه (فرم ورود کاربر) نام کاربران و گذرواژه رو بگیرم که هم در بانک چنین کاربری وجود داشته باشد، و هم گذرواژه ای که وارد کرده درست هست یا نه؟
لطف کنید راه کارهای خودتون رو برای من بنویسید.
با تشکر



سلام
چقدر دلم واسه همدان تنگ شده، خیلی وقته سر نزدم شهرتون:ناراحت::افسرده: ....بگذریم
یه فرم ورود ساده طراحی کنید :
2تا تکست باکس برای ورود نام کاربری و رمز عبور و 2تا باتون ورود و خروج.
در رویداد کلیک باتون ورود بنویسید:
string username = txtUserName.Text;
string password = txtPassword.Text;

if (ValidateUserNamePassword(username, password))
{
// کدهای لازم جهت باز کردن و نمایش فرم اصلی برنامه
}
else
{
MessageBox.Show("خطا در وارد کردن نام کاربری یا رمز ورود", "خطای ورود");
return;
}

این هم تابع ValidateUserNamePassword :
public bool ValidateUserNamePassword(string _username, string _password)
{
string connectionString = "Data Source=[servername];Initial Catalog=[databaseName];User ID=[Admin Login];Password=[Admin Password];";
SqlConnection cn = new SqlConnection(connectionString);
{

SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT UserName, Password FROM [TableName] WHERE UserName = @UserName and Password = @Password";

SqlParameterCollection sqlParams = cmd.Parameters;
sqlParams.AddWithValue("@UserName", _username);
sqlParams.AddWithValue("@Password", _password);

cn.Open();
SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.SingleRow);
if (dr.Read())
{
//اگر نام ورود و رمز عبور صحیح باشد true برگشت داده میشود و در غیر اینصورت false
dr.Close();
cn.Close();

return true;
}
else
{
dr.Close();
cn.Close();
return false;
}

}
}
امیدوارم گویا باشه دوست من.
موفق باشید.

teardrop
چهارشنبه 14 اردیبهشت 1390, 09:21 صبح
سلام
چقدر دلم واسه همدان تنگ شده، خیلی وقته سر نزدم شهرتون:ناراحت::افسرده: ....بگذریم
یه فرم ورود ساده طراحی کنید :
2تا تکست باکس برای ورود نام کاربری و رمز عبور و 2تا باتون ورود و خروج.
در رویداد کلیک باتون ورود بنویسید:
string username = txtUserName.Text;
string password = txtPassword.Text;

if (ValidateUserNamePassword(username, password))
{
// کدهای لازم جهت باز کردن و نمایش فرم اصلی برنامه
}
else
{
MessageBox.Show("خطا در وارد کردن نام کاربری یا رمز ورود", "خطای ورود");
return;
}

این هم تابع ValidateUserNamePassword :
public bool ValidateUserNamePassword(string _username, string _password)
{
string connectionString = "Data Source=[servername];Initial Catalog=[databaseName];User ID=[Admin Login];Password=[Admin Password];";
SqlConnection cn = new SqlConnection(connectionString);
{

SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT UserName, Password FROM [TableName] WHERE UserName = @UserName and Password = @Password";

SqlParameterCollection sqlParams = cmd.Parameters;
sqlParams.AddWithValue("@UserName", _username);
sqlParams.AddWithValue("@Password", _password);

cn.Open();
SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.SingleRow);
if (dr.Read())
{
//اگر نام ورود و رمز عبور صحیح باشد true برگشت داده میشود و در غیر اینصورت false
dr.Close();
cn.Close();

return true;
}
else
{
dr.Close();
cn.Close();
return false;
}

}
}
امیدوارم گویا باشه دوست من.
موفق باشید.

خط شماره 9 از چه جدولی استفاده میکنه؟
من جدول خاصی برای کاربران درست نکردم، از خود sqlServer کاربر ساختم.

payman_xxp
چهارشنبه 14 اردیبهشت 1390, 12:55 عصر
سلام
نوع دسترسی که به اینصورت در خود sql تعریف کردید محدوده و شما تنها اجازه دسترسی به کل دیتابیس و یا حذف و ویرایش کل دیتابیس رو به کاربر میدید، درحالیکه اگر در سطح خود برنامه این جدول رو ایجاد کنید کاملا میتونید دسترسی کاربر رو به فرمها و یا حتی باتونهای داخل فرم هم محدود کنید.
در روش شما با یک پسورد تمام دیتابیسهای sql به یک نوع محدود میشوند و میدونید که هر دیتابیسی محدودیت کاربری خودشو نیاز داره.
بنظر من یک جدول کاربری با فیلدهای دسترسی ایجاد کنید بهتره.
نظر شما چیه؟:متفکر:
موفق باشید.