ورود

View Full Version : مشکل در ثبت اطلاعاتی دریافتی از کاربر



programmermp
شنبه 17 مهر 1389, 10:32 صبح
سلام خسته نباشید
خیلی گشتم چیزی دستگیرم نشد (چه تو این سایت چه تو اینترنت)

من یک صفحه تنظیمات کاربر دارم که کاربر وقتی login می کنه می تونه در این قسمت اطلاعاتی که برای حساب کاربری خود ثبت کرده (مثل نام ،کلمه عبور و...) رو تغییر بده من از vs2010 و بانکم با sql 2005 طراحی شده که واسه سایتم از همون sql express و اسه برقراری ارتباط استفاده می کنم کدها هم اینطوری هستند

کدی که اطلاعات از بانک خونده می شه و به کاربر نشون داده می شه:(این کد در pageload صفحه هست)


strcon = "data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\db1 .mdf;User Instance=true"
strsql = "Select tbl1.* from tbl1 where usrid='" & Session("UserName").ToString & "'"
con = New SqlClient.SqlConnection(strcon)
con.Open()
da4 = New SqlClient.SqlDataAdapter(strsql, con)
ds4.Clear()
da4.Fill(ds4, "tbl1")
TextBox1.Text = ds4.Tables(0).Rows(0)("usnam")
TextBox2.Text = ds4.Tables(0).Rows(0)("usrid")
TextBox6.Text = ds4.Tables(0).Rows(0)("usrmail")
TextBox7.Text = ds4.Tables(0).Rows(0)("usrtel")
TextBox8.Text = ds4.Tables(0).Rows(0)("usradd")
TextBox9.Text = ds4.Tables(0).Rows(0)("usrpcod")
con.Close()

کدی که اطلاعات وارد شده از کاربر رو از تکست باکس ها می گیره و در بانک ذخیره می کنه:


strcon = "data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\db1 .mdf;User Instance=true"
strsql = "update tbl1 set usnam='" & TextBox1.Text & "',usrpas='" & TextBox4.Text & "',usrmail='" & TextBox6.Text & "',usrtel='" & TextBox7.Text & "',usradd='" & TextBox8.Text & "',usrpcod='" & TextBox9.Text & "' where usrid='" & TextBox2.Text & "'"
con = New SqlClient.SqlConnection(strcon)
con.Open()
da2 = New SqlClient.SqlDataAdapter(strsql, con)
ds2.Clear()
da2.Fill(ds2, "tbl1")
cb11.CommandText = strsql
cb11.Connection = con
cb11.ExecuteNonQuery()
ds2.Clear()
da2.Fill(ds2, "tbl1")
con.Close()

کدها 100% از نظر کارایی درست هستند اما نمی دونم چرا وقتی می خواهم اطلاعاتی رو که کاربر در تکست باکس وارد کرده بخونم واسه ذخیره در بانک، تکست باکس مقدار قبلی رو بر می گردونه. یعنی اگر مقدار قبلی فیلد نام ، علی بوده و کاربر اون رو به محمد تغییر داده موقع ذخیره تکست باکس به جای محمد همون علی رو برمی گردونه!!!!!!!؟؟؟؟؟؟
در صورتیکه فیلد کلمه عبور که نمایش داده نمی شه برای کاربر، با همین کد تنها فیلدی هست که مقدارش Update می شود.
لطفا راهنمایی کنید با تشکر فراوان

PhoenixNet
شنبه 17 مهر 1389, 10:54 صبح
کدی که در pageload هست را داخل :



if (!Page.IsPostBack)
{
strcon = "data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\db1 .mdf;User Instance=true"
strsql = "Select tbl1.* from tbl1 where usrid='" & Session("UserName").ToString & "'"
con = New SqlClient.SqlConnection(strcon)
con.Open()
da4 = New SqlClient.SqlDataAdapter(strsql, con)
ds4.Clear()
da4.Fill(ds4, "tbl1")
TextBox1.Text = ds4.Tables(0).Rows(0)("usnam")
TextBox2.Text = ds4.Tables(0).Rows(0)("usrid")
TextBox6.Text = ds4.Tables(0).Rows(0)("usrmail")
TextBox7.Text = ds4.Tables(0).Rows(0)("usrtel")
TextBox8.Text = ds4.Tables(0).Rows(0)("usradd")
TextBox9.Text = ds4.Tables(0).Rows(0)("usrpcod")
con.Close()

}


بزار.