PDA

View Full Version : سوال: لاگین (ورود اعضا)



rezazl
یک شنبه 11 بهمن 1394, 12:16 عصر
سلام . دوستان من یه قطعه کد پیدا کردم مخصوص ورود اعضا. اما متاسفانه فقط یک نفر میتونه وارد بشه . یعنی اگه چندتا عضو باشن طبق این کد اولین نفر در بانک فقط میتونه واردبشه. حالا چه تغییراتی بدم تو این کد که بقیه اعضا هم بتونن وارد بشن؟


int x;
x = vorodBindingSource.Find("name[i]", nameTextBox.Text);
int y;
y = vorodBindingSource.Find("pass[i]", passTextBox.Text);
if (x != -1 && y != -1 && x == y)
{
this.Visible = false;
Form4 frm = new Form4();
frm.Show();
}
else
{
MessageBox.Show("نام کاربری یا رمز عبور اشتباه است");
}



لطفا کمکم کنین. تا زمان تحویل پروژم وقتی نمونده:گریه:

momimomi
یک شنبه 11 بهمن 1394, 18:11 عصر
سلام
ببین این به دردت میخوره؟
البته برای بانک اکسس نوشته شده، برای اس کیو ال تغییرات جزئی نیاز داره


private void button1_Click(object sender, EventArgs e)
{
OleDbConnection con = new OleDbConnection(@"provider = microsoft.jet.oledb.4.0;" +
@"data source =a.mdb");
OleDbCommand com = new OleDbCommand();
int i = 0;
try
{


if ((txtUser.Text == string.Empty) || (txtPass.Text == string.Empty))
{
MessageBox.Show("لطفا نام کاربری و کلمه عبور را وارد کنید", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}


com = new OleDbCommand("SELECT COUNT(*) FROM users WHERE user= '" + txtUser.Text + "' AND pass= '" + txtPass.Text + "'", con);




if (con.State == ConnectionState.Closed)
{
con.Open();
i = (int)com.ExecuteScalar();
}//end if


con.Close();


if (i > 0)
{
// مخفی شدن فرم لاگین
this.Hide();
// لود کردن فرم اصلی برنامه و نمایش آن
MainPage frmmainpage = new MainPage();
frmmainpage.Show();
}
else
MessageBox.Show("نام کاربری و یا کلمه عبور اشتباه می باشد", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
}
finally
{
i = 0;
con.Close();
}
}

rezazl
یک شنبه 11 بهمن 1394, 20:15 عصر
داداش سلام منم بانکم اکسس هستش اما این خطا رو میده:
unrecognized database format
باید چکار کنم؟؟

momimomi
یک شنبه 11 بهمن 1394, 20:25 عصر
داداش سلام منم بانکم اکسس هستش اما این خطا رو میده:
unrecognized database format
باید چکار کنم؟؟

از چه ورژن اکسس استفاده میکنی؟

rezazl
یک شنبه 11 بهمن 1394, 21:01 عصر
از چه ورژن اکسس استفاده میکنی؟
access 2013

momimomi
یک شنبه 11 بهمن 1394, 21:12 عصر
access 2013
دو راه داری:
1- بانکت رو با فرمت access 2003-2007 با پسوند mdb ذخیره کن
2- خط زیر را

OleDbConnection con = new OleDbConnection(@"provider = microsoft.jet.oledb.4.0;" +
@"data source =a.mdb");

با این خط جایگزین کنی

OleDbConnection con = new OleDbConnection(@"provider = microsoft.jet.oledb.12.0;" +
@"data source =a.accdb");

به عدد 4 که به 12 تغییر پیدا کرده و پسوند پایگاه داده جدید دقت کن

rezazl
یک شنبه 11 بهمن 1394, 21:16 عصر
دو راه داری:
1- بانکت رو با فرمت access 2003-2007 با پسوند mdb ذخیره کن
2- خط زیر را

OleDbConnection con = new OleDbConnection(@"provider = microsoft.jet.oledb.4.0;" +
@"data source =a.mdb");

با این خط جایگزین کنی

OleDbConnection con = new OleDbConnection(@"provider = microsoft.jet.oledb.12.0;" +
@"data source =a.accdb");

به عدد 4 که به 12 تغییر پیدا کرده و پسوند پایگاه داده جدید دقت کن

داداش من پسوند پایگاه دادمو درست کردم . حالا این خطا رو میده
data type mismatch in criteria expression

momimomi
یک شنبه 11 بهمن 1394, 21:22 عصر
داداش من پسوند پایگاه دادمو درست کردم . حالا این خطا رو میده
data type mismatch in criteria expression
دقت کن فرمت فیلدهای user و pass در جدول اکسس رشته باشند نه int

حسین.کاظمی
دوشنبه 12 بهمن 1394, 07:59 صبح
داداش سلام منم بانکم اکسس هستش اما این خطا رو میده:
unrecognized database format
باید چکار کنم؟؟

سلام
این یکی از نقاط ضعف اکسس هست و نمیشه کاریشم کرد یعنی راه حلی نداره جز یک راه حل:لبخند:
زمانی این اتفاق میوفته که بانک اکسس باز هست و شما هم از طریق ویژوال پروژتون را run می کنید:لبخند: پس قبل از اجرای پروژه بانک اکسست را ببند.....



داداش من پسوند پایگاه دادمو درست کردم . حالا این خطا رو میده
data type mismatch in criteria expression

نام فیلد یا نوع فیلدی که در بانک اکسس تعریف کردی با نام فیلدی که در کوئری نوشتن(ویژوال) یا وارد کردن مقدار(مثلا در بانک فیلد را عدد تعریف کردی ولی در وارد کردن مقدار (تکست باکس)رشته وارد شده پس مغایرت دارد......



موفق باشی