PDA

View Full Version : کد برنامه لاگین



mjt10063
پنج شنبه 05 خرداد 1390, 17:11 عصر
سلام ببخشید دوستان
برنامه ای که تا حالا نوشتم بخش لاگینش مونده
نمیدونم چطور این کار ور انجام بدم
دیتا بیش SQL که با خود برنامه ویژوال استادیو طراحیش کردم
ممنون میشم اگر کد تشخیص حویت رو برام بزارید
با تشکر

ma.rad
پنج شنبه 05 خرداد 1390, 17:57 عصر
سوالتون تکراریه....
شما فقط باید یه جستجو بنویسید که نام کاربری ورمز که کاربر وارد کرده رو با نام کاربری ورمز داخل دیتابیس مقایسه کنه اگر مورد مشابهی پیدا کرد فرم Login مخفی بشه ودر غیر این صورت پیام خطا بده

mjt10063
جمعه 06 خرداد 1390, 09:37 صبح
سوالتون تکراریه....
شما فقط باید یه جستجو بنویسید که نام کاربری ورمز که کاربر وارد کرده رو با نام کاربری ورمز داخل دیتابیس مقایسه کنه اگر مورد مشابهی پیدا کرد فرم Login مخفی بشه ودر غیر این صورت پیام خطا بده

دوست عزیز
من جستجو رو با نام کاربری و رمز عبور انجام دادم
ولی هیچ موردی یافت نشد

payman_xxp
جمعه 06 خرداد 1390, 17:06 عصر
دوست عزیز
من جستجو رو با نام کاربری و رمز عبور انجام دادم
ولی هیچ موردی یافت نشد
سلام
خیلی ساده و جمع و جور میگم:
در دیتابیس میدونیم که 1جدول باید داشته باشیم که یوزرنیم و پسورد کاربران اونجا ذخیره شده(در حالت پیشرفته تر سطح دسترسی کاربران هم اینجا قابل اجراست).
فرم ورود و محتویاتش هم میدونیم چی داره: 2تا تکس باکس یوزرنیم و پسورد و 2تا باتون ورود و انصراف (برای خروج).
حالا با توجه به یوزرنیم پسوردی که در فرو ورود وارد شده، 1جستجو ایجاد میکنیم (sqlCommand یا storeProc فرقی نمی کنه) و در ایونت onClick باتون ورود قرار میدیم، اگر در دیتابیس وجود داشتن، فرم main برنامه صدا زده میشه و در غیر اینصورت دوباره فرم ورود نمایش داده میشه.
موفق باشید.

reza2012
جمعه 06 خرداد 1390, 17:26 عصر
راه هاي زيادي داره در كل يكي از راه هاش كه من معمولا استفاده ميكنم sqlDataREader
هست
يعنب اينكه از بانك ميخوني اطلاعات رو با شرط اگه درست بود فرم رو show كن اگه نه پيغام بده
يه سرچ كن اگه پيدا نكردي بگو برات بذارم كدشو

mjt10063
جمعه 06 خرداد 1390, 18:06 عصر
دوستان ببخشید که دارمدیر میگم
من مشکلم از فلوچارت کشیدن و این حرفها نیست
من مشکلم تو کد نویسی انواع راه ها رو پیش گرفتم ولی هر کدوم یک جا به مشکل بر میخورن
چون میدونم که اصول اصلی رو رعایت نمیکنم
اگر شما کد برنامه رو بدون توضیح هم بزارید من خودم متوجه میشم

با تشکر از همه دوستان

ma.rad
جمعه 06 خرداد 1390, 18:15 عصر
private void Btn_Login_Click(object sender, EventArgs e)
{
if (txt_user.Text == "")
{
lb_msg.Text = "نام کاربری را وارد نمایید!";
txt_user.Focus();
}
else if (txt_pass.Text == "")
{
lb_msg.Text = "رمز عبور را وارد نمایید!";
txt_pass.Focus();
}
else
{
دستور ات اتصال به بانک و جستجو
da.Login (dt,txt_user.Text,txt_pass.Text);
if(dt.Rows.Count>0)
{
Main fm = new Main();
this.Hide();
fm.ShowDialog();
}
else
{
lb_msg.Text = "نام کاربری و یا رمز عبور صحیح نمی باشد!";
txt_user.Text="";
txt_pass.Text ="";
}

mjt10063
جمعه 06 خرداد 1390, 18:55 عصر
دوست عزیز از بابت کدی که دادید متشکر
فقط یه بخشش رو متوجه نشدم
این که دستورات اتصال به بانک
من از این کد استفاده کردم

string str = "آدرس بانک";
sqlconnection scon = new sqlconnection(str;)
scon.open ();

ولی جستجو رو دیگه نمیدونم

به بعدش دیه انقدر جستجو کردم حفظ شدم

ma.rad
جمعه 06 خرداد 1390, 19:04 عصر
این هم کد جستجو

select* from Admin where UserName=@User and Password=@Pass
اگر نتونستید بگید کاملشو بزارم

mjt10063
جمعه 06 خرداد 1390, 19:23 عصر
دوست عزیز شما ز متغییر استفاده کردید
جای تعریف نکردید خوب معلوم کهمن تو کدش مشکل دارم نمی تونم متوجه بشم
الان username متغییر یا یک ستون از جدول ادمین
و یک سوال دیگه
da.Login (dt,txt_user.Text,txt_pass.Text);
شما da رو کجا تعریف کردید و dt

ma.rad
جمعه 06 خرداد 1390, 19:37 عصر
SqlConnection con = new SqlConnection();
con.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirecto ry|\\db.mdf;Integrated Security=True;User Instance=True";
SqlCommand cmd = new SqlCommand();
con.Open();
cmd.Connection = con;
string s = "select * from T1 where name = '{0}' and pass='{1}'";
s = string.Format(s, txtuser .Text ,txtpass.Text);
cmd.CommandText = s;
SqlDataAdapter da = new SqlDataAdapter();
DataTable dt = new DataTable();
da.SelectCommand = cmd;
da.Fill(dt);
con.Close();
مطمئن هستید بقیه قسمت های پروژه تون نوشتید :چشمک:


تشکر یادتون نره موفق باشید

mjt10063
جمعه 06 خرداد 1390, 19:45 عصر
مطمئن هستید بقیه قسمت های پروژه تون نوشتید

مطمن که نه ولی وقتی رو یه مطلب گیر میکنم
اصلا هیچ حسی ندارم رو بقیه کار کنم
با تشکر

mjt10063
جمعه 06 خرداد 1390, 20:32 عصر
دوست عزیز این کدی هست که من وارد کردم

SqlConnection scon = new SqlConnection();
scon.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=D:\\DB_Archu e\\Archeu.mdf;Integrated Security=True";
SqlCommand cmd = new SqlCommand();
scon.Open();
cmd.Connection = scon;
string selstr = "select * from login where user_name = tex_user.tex and pasword= tex_pas.text ";
selstr = string.Format(selstr,tex_user.Text,tex_pas.Text);
cmd.CommandText = selstr;
SqlDataAdapter da = new SqlDataAdapter();
DataTable dt = new DataTable();
da.SelectCommand = cmd;
da.Fill(dt);

da.Login (dt,tex_user.Text,tex_pas.Text);
if(dt.Rows.Count>0)
{
Modir_Archue fm = new Modir_Archue();
this.Hide();
fm.ShowDialog();
}
else
{
MessageBox.Show( "نام کاربري و يا رمز عبور صحيح نمي باشد!");
tex_user.Text="";
tex_pas.Text ="";
}

scon.Close();
}

تو این قسمتش برنامه ارور میده
da.Login (dt,tex_user.Text,tex_pas.Text);
به login گیر میده.

ma.rad
جمعه 06 خرداد 1390, 20:41 عصر
این خط پاک کنید درست میشه

da.Login (dt,tex_user.Text,tex_pas.Text);

ma.rad
جمعه 06 خرداد 1390, 20:46 عصر
اینم مثل کدی که براتون گفتم باید باشه:

string selstr = "select * from login where user_name = tex_user.tex and pasword= tex_pas.text ";

mjt10063
جمعه 06 خرداد 1390, 21:00 عصر
این دوتا کار دیگه ای هم که گفتید رو هم انجام دادم
string selstr = "select * from login where user_name = '{0}' and pasword= '{1}' ";
و اون کد رو هم غیر فعال کردم
در جدول login هم دو سطر به نام های user_name و pasword دارم (خاصیت جفتشون nvarchar)
که داخلشون مقدار عددی دادم

ولی وقتی روی دکمه لاگین کلیک میکنم پیغام نام کاربري و يا رمز عبور صحيح نمي باشد میاد

mjt10063
جمعه 06 خرداد 1390, 21:02 عصر
حل شد دوست عزیز با تشکر فراوان از شما و همکاریتون
خیلی خیلی متشکرم
امید وارم اگر بازم به مشکل بر خوردم بتونم ازتون کمک بگیرم