نمایش نتایج 1 تا 10 از 10

نام تاپیک: درست کردن فرم login

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    شمال
    پست
    73

    Question درست کردن فرم login

    سلام دوستان. میخوام یه صفحه login درست کنم. میخوام بدون ارور باشه واسه همین اول پیوزر و پس رو چک میکنم که قبلا وجود داشته یا نه که اینا رو تو sqlcommand انجام میدم. منتها میخوام وقتی یوزر یه نام کاربری رو که قبلا توی دیتا بیس نبوده رو وارد میکنه بهش بگه که یوزر یا پستون وجود نداره. مشکل من تو این قسمت دوممه. کدم رو براتون میزارم تا کمکم کنید. شرمنده فقط فوری میخوام.
            private void buttonLogin_Click(object sender, EventArgs e)
    {
    string enc = encryptString(textBoxPassword.Text);
    SqlDataReader sdrLogin = null;
    SqlCommand scLogin = new SqlCommand("select * from TableUser where UserName=\'" + textBoxUserName.Text + "\' and Password=\'"+enc+"\'" , connFKLogin);
    sdrLogin = scLogin.ExecuteReader();
    sdrLogin.Read();
    if (sdrLogin["UserType"].ToString() == "a")
    {
    FormModiriat fM = new FormModiriat();
    fM.ShowDialog();
    }
    else if (sdrLogin["UserType"].ToString() == "b")
    {
    FormKarbar fK = new FormKarbar();
    fK.ShowDialog();

    }
    else
    {
    MessageBox.Show("اين کاربر از لحاظ دسترسي تعريف نشده است. لطفا اين موضوع را با مدير درميان بگذاريد");
    }

    sdrLogin.Close();

    }

    که قسمتی که از حروفa,b استفاده کردم برای تشخیص نوع کار بر هست.

  2. #2
    کاربر دائمی آواتار powerboy2988
    تاریخ عضویت
    تیر 1385
    محل زندگی
    تهران
    سن
    37
    پست
    1,301

    نقل قول: فوری درست کردن فرم login

    چون داری با دیتابیس کار می کنی و خود دیتابیست ENGINE داره .. واسه کارایی برنامه شما یک SP درست کن و username و password رو بهش ارسال کن و نتیجه رو از SP بگیر و تو application چک کن... می تونی به عنوان مثال از این select استفاده کنی :


    select count(*) from userdb where
    username = username
    and
    password = password

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    شمال
    پست
    73

    نقل قول: فوری درست کردن فرم login

    دوست عزیز دستتون درد نکنه. راه حلی هم خودم پیدا کردم که ساده هست. اونم استفاده از کد زیر هست
    sdrLogin.HasRows == true

    کد کامل دکمه login رو اینجا میزارم تا همه استفاده کنند. اگر کسی راه بهتری سراغ داره با توضیح روش بیان کنه. ممنون از همکاریتون
            private void buttonLogin_Click(object sender, EventArgs e)
    {
    string enc = encryptString(textBoxPassword.Text);
    SqlDataReader sdrLogin = null;
    SqlCommand scLogin = new SqlCommand("select * from TableUser where UserName=\'" + textBoxUserName.Text + "\' and Password=\'"+enc+"\'" , connFKLogin);
    sdrLogin = scLogin.ExecuteReader();
    sdrLogin.Read();
    if (sdrLogin.HasRows == true)
    {
    if (sdrLogin["UserType"].ToString() == "a")
    {
    FormModiriat fM = new FormModiriat();
    fM.ShowDialog();
    }
    else if (sdrLogin["UserType"].ToString() == "b")
    {
    FormKarbar fK = new FormKarbar();
    fK.ShowDialog();

    }
    else
    {
    MessageBox.Show("اين کاربر از لحاظ دسترسي تعريف نشده است. لطفا اين موضوع را با مدير درميان بگذاريد");
    }

    }
    else
    MessageBox.Show("نام کاربری یا کلمه عبور شما اشتباه است");

    sdrLogin.Close();

    }

  4. #4
    کاربر دائمی
    تاریخ عضویت
    آبان 1385
    محل زندگی
    تهران
    پست
    1,112

    نقل قول: فوری درست کردن فرم login

    select count(*) from userdb where
    username = username
    and
    password = password
    بهتره از این شکل چک کردن استفاده نشه تا خطر SQL Injection رو کاهش بده (کلن می گم)

  5. #5
    کاربر تازه وارد آواتار soheil_1367
    تاریخ عضویت
    آبان 1388
    محل زندگی
    همین نزدیکی ها
    پست
    77

    نقل قول: فوری درست کردن فرم login

    منم همین مشکل رو داشتم که این طوری حلش کرد ورداشتم تو دیتابیسم username رو pk گذاشتم بنابراین اگه username تکراری باشه پیغام میده که میتونی با یه try و catch کاملا مدیریتش بکنی

  6. #6
    کاربر دائمی آواتار linux
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    2,313

    نقل قول: فوری درست کردن فرم login

    یادم 1-2 سال پیش یک مطلب کامل تو این قسمت دوستان گذاشته بودند لطفا جستجو کنید

  7. #7
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    شمال
    پست
    73

    نقل قول: فوری درست کردن فرم login

    نقل قول نوشته شده توسط linux مشاهده تاپیک
    یادم 1-2 سال پیش یک مطلب کامل تو این قسمت دوستان گذاشته بودند لطفا جستجو کنید
    چک کردم ولی چیزی پیدا نکردم واسه همین گذاشتم.

  8. #8
    کاربر دائمی آواتار powerboy2988
    تاریخ عضویت
    تیر 1385
    محل زندگی
    تهران
    سن
    37
    پست
    1,301

    نقل قول: فوری درست کردن فرم login

    نقل قول نوشته شده توسط Vahid_moghaddam مشاهده تاپیک
    بهتره از این شکل چک کردن استفاده نشه تا خطر SQL Injection رو کاهش بده (کلن می گم)
    آره حرفت کاملا درسته..
    من به 2 دلیل گفتم که از SP استفاده کنه...
    1- هم تو application و هم تو دیتابیس بتونه sql injection رو کنترل کنه
    2- کلا کارهای مربوط به دیتا رو خود engine دیتابیس انجام بده که application کارایی بیشتری داشته باشه

  9. #9

    نقل قول: فوری درست کردن فرم login

    سلام

    string
    enc = encryptString(textBox2.Text)

    به اين خط ارور مي ده!!!

    erorr:Error 1 The name 'encryptString' does not exist in the current

  10. #10
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736

    نقل قول: فوری درست کردن فرم login

    نقل قول نوشته شده توسط nasime_shomal مشاهده تاپیک
    چک کردم ولی چیزی پیدا نکردم واسه همین گذاشتم.
    https://barnamenevis.org/showthread.php?p=802364
    https://barnamenevis.org/showthread.php?t=88552

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •