PDA

View Full Version : سوال: در مورد نمایش اطلاعات صفحه login



lord_helgard
چهارشنبه 12 آذر 1393, 10:48 صبح
با سلام
دوستان سوال بنده به اینصورت هستش که فرمی با نام pas که فرم لاگین است پس از وارد کردن یوزر و پسورد مورد نظر وارد فرم Home میشود
حالا میخوام روی فرم HOME کنترل Label ی قرار بدم که نسبت به کاربر وارد شده به آن خوش آمد بگه ،

به عنوان مثال : کاربر مدیر خوش آمدید

جدوا SQL ( بانک اطلاعاتی ) با نام T_User می باشد

ممنون میشم راهنمایی کنید !:لبخندساده:

bazikadeh
چهارشنبه 12 آذر 1393, 11:34 صبح
اسمشو بگه یا فقط سطح دسترسی هر کاربر را بگه ؟؟

sajad_3066
چهارشنبه 12 آذر 1393, 15:31 عصر
سلام یک query مینویسی که اطلاعات کاربر login کردتو بگیره.یه property تعریف می کنی که اون اطلاعات رو نگه داره (با استفاده از set,get)
داخل فرم home چک میکنی مقدار property چیه که بذاری تو label

danialafshari
چهارشنبه 12 آذر 1393, 16:28 عصر
با سلام
صحت Login و ورود رو خودتون انجام بدید و نمونه های بسیاری هم در سایت موجوده
http://barnamenevis.org/showthread.php?64210-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-%DA%A9%D9%88%DA%86%DA%A9-%D9%88-%D9%85%D9%81%D9%8A%D8%AF-%D8%AF%D8%B1-%D8%B3%D9%8A-%D8%B4%D8%A7%D8%B1%D9%BE&p=1707265&viewfull=1#post1707265
یکی از روش ها استفاده از Class و get و set می باشد
اگر کلاسی به شکل زیر باشد
class Class1
{
private static string UserName = null;
public string userName
{
get { return UserName; }
set { UserName = value; }
}
}
اگر شرط درست بود و رمز صحیح بود به صورت زیر در متد واقع در کلاس قرار داده
Class1 c = new Class1();
private void btnLogin_Click(object sender, EventArgs e)
{
c.userName = txtUserName.Text.Trim();
}
و به صورت زیر فراخوانی می کنید
label1.Text = string.Format("{0}، خوش آمدید", c.userName);
موفق باشید

lord_helgard
چهارشنبه 12 آذر 1393, 17:29 عصر
با سلام
صحت Login و ورود رو خودتون انجام بدید و نمونه های بسیاری هم در سایت موجوده
http://barnamenevis.org/showthread.php?64210-%D9%86%D9%85%D9%88%D9%86%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-%DA%A9%D9%88%DA%86%DA%A9-%D9%88-%D9%85%D9%81%D9%8A%D8%AF-%D8%AF%D8%B1-%D8%B3%D9%8A-%D8%B4%D8%A7%D8%B1%D9%BE&p=1707265&viewfull=1#post1707265
یکی از روش ها استفاده از Class و get و set می باشد
اگر کلاسی به شکل زیر باشد
class Class1
{
private static string UserName = null;
public string userName
{
get { return UserName; }
set { UserName = value; }
}
}
اگر شرط درست بود و رمز صحیح بود به صورت زیر در متد واقع در کلاس قرار داده
Class1 c = new Class1();
private void btnLogin_Click(object sender, EventArgs e)
{
c.userName = txtUserName.Text.Trim();
}
و به صورت زیر فراخوانی می کنید
label1.Text = string.Format("{0}، خوش آمدید", c.userName);
موفق باشید

خب ببینید میخوام مقدار از فرم اول که PAS هست به Label فرم دومم انتقال داده بشه !!

danialafshari
چهارشنبه 12 آذر 1393, 20:34 عصر
خب ببینید میخوام مقدار از فرم اول که PAS هست به Label فرم دومم انتقال داده بشه !!
خب همینه دیگه
اگر سلکت کردید درست بود اطلاعات به کلاس انتقال داده میشن و در تمام برنامه می تونید ازش استفاده کنید

lord_helgard
چهارشنبه 12 آذر 1393, 21:53 عصر
خب همینه دیگه
اگر سلکت کردید درست بود اطلاعات به کلاس انتقال داده میشن و در تمام برنامه می تونید ازش استفاده کنید

خب ببینید ، من الان کلاس رو ایجاد و مطابق دستورات شما کد نویسی کردم به اینصورت

using System;using System.Collections.Generic;
using System.Text;


namespace Air
{
class Class1
{
private static string UserName = null;
public string userName
{
get { return UserName; }
set { UserName = value; }
}
}
}

و کد زیر رو تو قسمت دکمه لاگین نوشتم :

private void button1_Click(object sender, EventArgs e) {
string connstr = "Data Source=.;Initial Catalog=Air;Integrated Security=True";
SqlConnection conn = new SqlConnection(connstr);
SqlDataReader dr;
SqlCommand cmd = new SqlCommand("select * from T_User where Username='" + textBox1.Text + "' and Password='" + textBox2.Text + "'", conn);
conn.Open();
dr = cmd.ExecuteReader();
if (dr.Read())
{
textBox1.Text = "";
textBox2.Text = "";
Home f = new Home();
f.ShowDialog();


Class1 c = new Class1();
c.userName = textBox1.Text.Trim();



}
حالا هم یک label در فرم Home ساختم به اسم label1 و تو قسمت Form_load این کد رو نوشتم :

label1.Text = string.Format("{0}، خوش آمدید", c.userName);
ولی وقتی برنامه رو اجرا میکنم به آرگومان C نوشته شده در کد صفحه Form ایراد میگیره و میگه اصلا وجود نداره !!!

danialafshari
چهارشنبه 12 آذر 1393, 23:09 عصر
ولی وقتی برنامه رو اجرا میکنم به آرگومان C نوشته شده در کد صفحه Form ایراد میگیره و میگه اصلا وجود نداره !!!
همونطور که بالا گفتم باید تعریفش کنید
Class1 c = new Class1();

lord_helgard
پنج شنبه 13 آذر 1393, 10:44 صبح
همونطور که بالا گفتم باید تعریفش کنید
Class1 c = new Class1();



یعنی در صفحه Home هم دوباره تعریف کنم C رو ؟!
ببینید! فرم لاگین مربوط به صفحه Pas هستش که من کلاس رو با آرگومان C اونجا تعریف کردم ، و فرم Home که میخوام Label رو نشون بده ارور میده که Label نمیتواند مقدار C.userName رو پیدا کنه !

danialafshari
جمعه 14 آذر 1393, 03:25 صبح
یعنی در صفحه Home هم دوباره تعریف کنم C رو ؟!
ببینید! فرم لاگین مربوط به صفحه Pas هستش که من کلاس رو با آرگومان C اونجا تعریف کردم ، و فرم Home که میخوام Label رو نشون بده ارور میده که Label نمیتواند مقدار C.userName رو پیدا کنه !

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