PDA

View Full Version : سوال در مورد ساخت فرم ورود کاربران



behzadsatan
جمعه 10 مهر 1394, 20:37 عصر
سلام دوستان من قصد دارم برنامه ای رو بسازم که سطح دسترسی کاربران باهم فرق داشته باشه از این یه پایگاه داده اکسس ساختم و جدول یوزرنیم پسورد هم قرار دادم. اما مشکل من اینجاس که وقتی میخوام لوگین کنم فقط اولین فیلد رو به عنوان یوزرنیم پسورد میشناسه و باقی یوزرها رو نمیشناسه! ممنون میشم راهنماییم کنید. اینم کد لوگین
If Adodc1.Recordset.Fields("UserName") = Trim(UserNameTxt.Text) Then If Adodc1.Recordset.Fields("Password") = Trim(PasswordTxt.Text) Then
UserCheck = Trim(UserNameTxt.Text)
Else
MsgBox "ÑãÒ ÚÈæÑ ÇÔÊÈÇå ãí ÈÇÔÏ", vbCritical, "ÎØÇ"
PasswordTxt.Text = Empty
End If
Else
MsgBox "äÇã ßÇÑÈÑí ÇÔÊÈÇå ãí ÈÇÔÏ", vbCritical, "ÎØÇ"
UserNameTxt.Text = Empty
End If

behzadsatan
شنبه 11 مهر 1394, 14:40 عصر
خواهشا دوستان کمک کنید. ممنون میشم :ناراحت:

علیرضا5
یک شنبه 12 مهر 1394, 11:08 صبح
سلام سوال خیلی مبهمه



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

اگه منظورت از فیلد ** ریکورده که خوب شما باید بگی که به ریکورد بعدی بره و اگه همون فیلده ممکنه ایراد از کانکشن باشه
به هر حال برای تعیین سطح دسترسی میتونی مثلا بگی برای یکی از یوزرها باتون صفحه مثلا گزارشگیری غیر فعال بشه

behzadsatan
دوشنبه 13 مهر 1394, 08:29 صبح
سلام سوال خیلی مبهمه

اگه منظورت از فیلد ** ریکورده که خوب شما باید بگی که به ریکورد بعدی بره و اگه همون فیلده ممکنه ایراد از کانکشن باشه
به هر حال برای تعیین سطح دسترسی میتونی مثلا بگی برای یکی از یوزرها باتون صفحه مثلا گزارشگیری غیر فعال بشه
بله منظورم رکورد بود.عذرخواهی میکنم. ببینید من سه تا یوزر و پسورد وارد دیتابیس کردم میخوام یوزر و پسوردی رو که کاربر از طریق تکست باکس وارد میکنه چک کنه ببینه داخل دیتا بیس هست یا نه!

علیرضا5
دوشنبه 13 مهر 1394, 16:52 عصر
Adodc1.Recordset.MoveNext
با این کد به رکورد بعدی میری تا زمانی که شما به رکورد بعدی نری فقط ریکورد اول خوانده میشه




Adodc1.Recordset.MoveFirst
For i = 1 To Adodc1.Recordset.RecordCount
If Adodc1.Recordset.Fields("a") = Text1.Text Then MsgBox ""
Adodc1.Recordset.MoveNext
Next i

behzadsatan
دوشنبه 13 مهر 1394, 18:55 عصر
Adodc1.Recordset.MoveNext
با این کد به رکورد بعدی میری تا زمانی که شما به رکورد بعدی نری فقط ریکورد اول خوانده میشه



Adodc1.Recordset.MoveFirst
For i = 1 To Adodc1.Recordset.RecordCount
If Adodc1.Recordset.Fields("a") = Text1.Text Then MsgBox ""
Adodc1.Recordset.MoveNext
Next i



ممنون از راهنماییتون ولی هر حلقه ای رو که استفاده میکنم کامپایل ارور میده و برای مثال میزنه next without for یا do without loop ساختارش رو هم رعایت کردم :(

علیرضا5
دوشنبه 13 مهر 1394, 23:36 عصر
اگه از عبارت
Option Explicit در قسمت بالای صفحه کدنویسی هاتون استفاده کردین حذفش کنین
اگه درست نشد برنامتون رو ضمیمه کنید تا بررسی بشه

behzadsatan
سه شنبه 14 مهر 1394, 18:06 عصر
اگه از عبارت
Option Explicit در قسمت بالای صفحه کدنویسی هاتون استفاده کردین حذفش کنین
اگه درست نشد برنامتون رو ضمیمه کنید تا بررسی بشه



ممنون از لطفتون. اکد رو به اینصورت دستکاری کردم درست شد.



Do
If Adodc1.Recordset.Fields("UserName") = Trim(UserNameTxt.Text) And Adodc1.Recordset.Fields("Password") = Trim(PasswordTxt.Text) Then
UserCheck = UserNameTxt.Text
Form9.Show
Unload Me
Exit Sub
Else
Adodc1.Recordset.MoveNext
End If


Loop Until Adodc1.Recordset.EOF