PDA

View Full Version : سوال: مشکل این کد چیه؟



minajasmi
شنبه 23 مرداد 1389, 11:56 صبح
من کد زیر را برای چک کردن نام کاربری و پسورد گذاشتم که اطلاعات را درست از بانک می خونه اما شرط را اصلا چک نمی کنه ممنون می شم کمک کنید بفهمم مشکلش چیه؟
sqlconnection cn1=new sqlconnection()
+
sqlcommand com1=new sqlcommand(select shsh from tabel1 where shdaneshjoo=

'" textbox1.text + "'";
con.open()
string shenasname=com.executescalar()
.tostring()
string pass=textbox2.text;
if (pass==shenasnem)
response.redirect(mail.aspx")

Ali_M.Eghbaldar
شنبه 23 مرداد 1389, 12:02 عصر
سلام
برای گذاشتن کد از تگ خودش بصورت زیر استفاده کن

sqlconnection cn1=new sqlconnection()
+
sqlcommand com1=new sqlcommand(select shsh from tabel1 where shdaneshjoo=

'" textbox1.text + "'";
con.open()
string shenasname=com.executescalar()
.tostring()
string pass=textbox2.text;
if (pass==shenasnem)
response.redirect(mail.aspx")

فیلد shdaneshjoo منحصربفرده؟

minajasmi
شنبه 23 مرداد 1389, 12:33 عصر
سلام
برای گذاشتن کد از تگ خودش بصورت زیر استفاده کن

sqlconnection cn1=new sqlconnection()
+
sqlcommand com1=new sqlcommand(select shsh from tabel1 where shdaneshjoo=

'" textbox1.text + "'";
con.open()
string shenasname=com.executescalar()
.tostring()
string pass=textbox2.text;
if (pass==shenasnem)
response.redirect(mail.aspx")

فیلد shdaneshjoo منحصربفرده؟

بله منحصر به فرده داده را از بانک میخونه و چاپ هم میکنه اما شرطا چک نمیکنه نادیده میگیره

Ali_M.Eghbaldar
شنبه 23 مرداد 1389, 12:42 عصر
قبل از اینکه به if برسه از دومقدار textbox و shenasname یه respones.write() بگیر ببنین اصلا مقداری return میکنه؟

minajasmi
شنبه 23 مرداد 1389, 18:48 عصر
قبل از اینکه به if برسه از دومقدار textbox و shenasname یه respones.write() بگیر ببنین اصلا مقداری return میکنه؟



بله مقدارشو درست چاپ میکنه.

صادق صدقی
یک شنبه 24 مرداد 1389, 02:32 صبح
سلام

مشکله اصلی ای که داریاینه که از پارامتر استفاده نکردی و امنیت بانکتو به شدت آوردی پائین!!!!

هیچ می دونی که به راحتی می تونن داده هاتو {حذف؛ویرایش؛درج}کرد؟
یا اصلا یک کوئری بدن که سرور رو تافردا صبح هنگ کنه؟


بجای استفاده از تکست باکس ها


من کد زیر را برای چک کردن نام کاربری و پسورد گذاشتم که اطلاعات را درست از بانک می خونه اما شرط را اصلا چک نمی کنه ممنون می شم کمک کنید بفهمم مشکلش چیه؟
sqlconnection cn1=new sqlconnection()
+
sqlcommand com1=new sqlcommand(select shsh from tabel1 where shdaneshjoo=

'" textbox1.text + "'";
con.open()
string shenasname=com.executescalar()
.tostring()
string pass=textbox2.text;
if (pass==shenasnem)
response.redirect(mail.aspx





select shsh from tabel1 where shdaneshjoo=@id


بعد بنویس



cmd1.parameters.Add("@id",sqldbtype.{int or bigint}).vaule=int64.parse(textbox.text);


بهدشم شما اسمه کانکشنت چیه؟
cn1؟
پس چرا گفتی

con.open()?

از اون گذشته شما واسه sqlcommand دت کانکشن تعریف نکردی عزیزه من!!!!!!


cmd1.Connection=cn1


اگر با زهم مشکلی بود بگو

صادق صدقی
یک شنبه 24 مرداد 1389, 02:35 صبح
در ضمن چون گفتی اجرا می شه احتمالا اینجا اینطوری نوشته باشی

با Break point ها رشته ای که دریافت می کنی رو چک کن

minajasmi
یک شنبه 24 مرداد 1389, 14:14 عصر
در ضمن چون گفتی اجرا می شه احتمالا اینجا اینطوری نوشته باشی

با Break point ها رشته ای که دریافت می کنی رو چک کن



سلام.
اینجا اشتباه نوشتم وگرنه کدم درسته منظورتون اینه اگه با پارامتر داده ها رو ارسال کنم مشکل حل میشه؟

صادق صدقی
دوشنبه 25 مرداد 1389, 04:56 صبح
سلام.
اینجا اشتباه نوشتم وگرنه کدم درسته منظورتون اینه اگه با پارامتر داده ها رو ارسال کنم مشکل حل میشه؟


نه


پارامتر بفرست که راه نفوذ رو به صفر برسونی

الان راحت می تونم تمامه رکورد هاتو پاک کنم!!!!!!!
با تکست باکس
"Select * from Table Where id=' "+textbox.text+" ' ";
inja mitoonam toye Text box Benvisam --> 12'Delete * From Table '
be hamin rahati Tamame Etela at Be Fana Mire!!!!!!!!


Ama Age Parametr Bashe Ba hich chiz nemitoone Nofooz Kone