PDA

View Full Version : سوال: فرم لوگین و مشکل نمایش اطلاعات



amir.bakhtiari
جمعه 16 خرداد 1393, 13:03 عصر
سلام
من یه مشکلی دارم
یه فرم لوگین دارم وقتی کاربر username و pass رو وارد میکنه وارد یه فرم دیگه میشه
من میخوام وقتی لوگین کرد اطلاعات کاربر که تو یه table ثبت شده - مثل نام - نام خانوادگی شماره پرسنلی و... تو چند تا label نشون بده
و کدی که نوشتمپ
loginfrm lg = new loginfrm();
SqlConnection con_ = new SqlConnection(@"Data Source=AMIRB;Initial Catalog=mesinQC;Integrated Security=True");
SqlDataAdapter sda_ = new SqlDataAdapter("select * from user_manage where username='" + lg.textBox1.Text + "'", con_);
DataSet ds = new DataSet();
sda_.Fill(ds, "user_manage");
label4.DataBindings.Add("Text", ds, "user_manage.name_family");

lg-----> فرم لوگین
تو قسمت lg.textbox.text نام کاربری وارد میشه ک واضحه

من این کدو تو قسمت form_load فرم main قرار دادم ولی اتفاقی نمیوفته

اگه میشه راهنمایی کنید ممنون میشم

parvizwpf
جمعه 16 خرداد 1393, 14:16 عصر
اول چک کنید ببیتید دیتای توی sda هست یا نه (برای اطمینان). سپس میتونید اینطور بنویسید :
label4.Text = sda_.Rows[0]["name_family"].value.ToString();
الیته از سینتکس کد بالا مطمئن نیستم.

amir.bakhtiari
جمعه 16 خرداد 1393, 14:37 عصر
تا حدودوی حالش کردم
وSqlDataAdapter sda_ = new SqlDataAdapter("select * from user_manage where username='amir'", con_);
تغییرش میدم کار میکنه

وقتی بجای amir اینو میزارم lg.textBox1.Text کار نمیکنه
lg فرم لوگین و textbox نام کاربری میگیره- ولی خالی برمیگردونه
حتی -text box -moifiers برابر با public قرار دادم ولی خبری نیست!!!!!!

yasesepid
جمعه 16 خرداد 1393, 14:42 عصر
تا حدودوی حالش کردم
وSqlDataAdapter sda_ = new SqlDataAdapter("select * from user_manage where username='amir'", con_);
تغییرش میدم کار میکنه

وقتی بجای amir اینو میزارم lg.textBox1.Text کار نمیکنه
lg فرم لوگین و textbox نام کاربری میگیره- ولی خالی برمیگردونه
حتی -text box -moifiers برابر با public قرار دادم ولی خبری نیست!!!!!!

میتونی با کوئری استرینگ مقدار text رو ارسال کنی.یا اگر بعداز لاگین نام کاربری رو توی کوکی میذاری،این مقدار رو از کوکی بخون.
این کد رو امتحان کن:


SqlConnection con_ = new SqlConnection(@"Data Source=localhost;Initial Catalog=Example;Integrated Security=True");
SqlDataAdapter sda_ = new SqlDataAdapter("select * from Users where Name=N'" +Request.QueryString["t"].ToString() + "'", con_);
DataSet ds = new DataSet();

sda_.Fill(ds, "Users");
if (ds.Tables["Users"].Rows.Count != 0)
{
foreach (DataRow dr in ds.Tables["Users"].Rows)
{

Label1.Text = dr["Family"].ToString();
}
}

parvizwpf
جمعه 16 خرداد 1393, 14:44 عصر
برای پاس دادن اطلاعات به دیتابیس از پارامترها استفاده کنید.

amir.bakhtiari
جمعه 16 خرداد 1393, 14:57 عصر
تحت وب نیستا - ویندوزه

parvizwpf
جمعه 16 خرداد 1393, 15:08 عصر
فرقی نداره ADO.NET برای هر دو ، یک سینتکس داره.

amir.bakhtiari
جمعه 16 خرداد 1393, 15:24 عصر
Request.QueryString["t"].ToString()
این چیه! چه کار انجام میده؟؟؟

yasesepid
جمعه 16 خرداد 1393, 15:50 عصر
من مقدار تکست رو از کوئری استرینگ خوندم،شما به جاش از تکست بخون

gjmkdyttyhujk
جمعه 16 خرداد 1393, 20:59 عصر
یک یا چند متغییر پابلیک برای mainform بساز و به همون اندازه هم برای loginform. بعد از کد زیر استفاده کن.


sqldatareader sdr0=com0.executereader();
if(sdr0.read())
{
mainform mf0=new mainform();
mf0.name=sdr0["name"].tostring();
mf0.family=sdr0["family"].tostring();
mf0.personelNO=sdr0["personelNO"].tostring();
}
else
{
messagebox.show("wrong username or password");
}

amir.bakhtiari
یک شنبه 18 خرداد 1393, 11:28 صبح
یک یا چند متغییر پابلیک برای mainform بساز و به همون اندازه هم برای loginform. بعد از کد زیر استفاده کن.
میشه بیشتر توضیح بدید؟

gjmkdyttyhujk
یک شنبه 18 خرداد 1393, 14:05 عصر
میشه بیشتر توضیح بدید؟

از این واضح تر نمیشه گفت ها؟ شما داخل mainform سه تا متغییر پابلیک با نام های وfamilyوpersonelNOو name تعریف کن. همین.loginfom رو نمیخواد. بعد کدی که من نوشتم رو copy کن بعد paste کن.