问题描述
在做网站的过程中比如:注册一些信息、留言、评论等,调试时页面都不出现错误,但是添加的这些信息却都显示不出来,也添加不到数据库中,为什么呢?HELP!!!多谢eg:其中一个注册的单击事件protectedvoidButton1_Click(objectsender,EventArgse){if(username.Text.ToString()!=""&&pwd.Text.ToString().Trim()!=""&&pwd2.Text.ToString().Trim()!=""&&sfz.Text.ToString().Trim()!=""){if(pwd.Text.ToString().Trim()!=pwd2.Text.ToString().Trim()){Response.Write("<script>javascript:alert('两次密码不一至,请确认');</script>");}else{stringsql;sql="selectidfromkhuserswhereusername='"+username.Text.ToString().Trim()+"'";DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){Response.Write("<script>javascript:alert('该用户名已经存在,请换其他用户名');</script>");}else{stringgender;if(RadioButton1.Checked){gender="男";}else{gender="女";}sql="insertintokhusers(username,pwd,realname,tel,sfz,addr,gender)values('"+username.Text.ToString().Trim()+"','"+pwd.Text.ToString().Trim()+"','"+realname.Text.ToString().Trim()+"','"+tel.Text.ToString().Trim()+"','"+sfz.Text.ToString().Trim()+"','"+addr.Text.ToString().Trim()+"','"+gender+"')";intresult2;result2=newClass1().hsgexucute(sql);if(result2==1){Session["nuser"]=username.Text.ToString().Trim();Response.Redirect("~/Default.aspx");}else{Response.Write("<script>javascript:alert('系统错误');</script>");}}}}}else{Response.Write("<script>javascript:alert('请填写必填选项');</script>");}}
解决方案
解决方案二:
if(result2==1)是什么道理?
解决方案三:
引用楼主的回复:
在做网站的过程中比如:注册一些信息、留言、评论等,调试时页面都不出现错误,但是添加的这些信息却都显示不出来,也添加不到数据库中,为什么呢?HELP!!!多谢eg:其中一个注册的单击事件protectedvoidButton1_Click(objectsender,EventArgse){if(username.Text.ToString()!=……
上次不是给你说吗?
解决方案四:
你在运行的时候把sql拿出来看看啊,鬼知道你的返回值是多少啊万一是2怎么办
解决方案五:
看着都眼花,楼主考我们眼里和耐力吗?你至少贴下错误信息啊,运行后总有提示吧?没有提示就调试下,看哪里有错在做修改,这样叫我们怎么弄?
解决方案六:
单步调试找出错误
解决方案七:
调试一下,这样的代码看起脑火,,,,hsgexucute(sql),这个方法里面是不是有trycatch,把错给吃掉了。
解决方案八:
加断点调试,或者拷贝出sql代码在数据库里面单独运行insert语句。看看sql有没有问题
解决方案九:
引用7楼的回复:
加断点调试,或者拷贝出sql代码在数据库里面单独运行insert语句。看看sql有没有问题
+++断点调试加单个sql测试
解决方案十:
引用6楼的回复:
调试一下,这样的代码看起脑火,,,,hsgexucute(sql),这个方法里面是不是有trycatch,把错给吃掉了。
我也觉是这里面有TRYCATHCH吧错误吃掉了
解决方案十一:
result2==1你确定??
解决方案十二:
这样的问题只要断点单步调试,就会有结果。你这么问,谁知道哪错啊
解决方案十三:
你看一下,你拼出来的sql语句是怎样的?
解决方案十四:
在程序中设置断点,单步调试下,就可以找到错误。
解决方案十五:
断点调试呀,看看什么地方的值和你理想的状态不一样。应该就是那个地方有问题了。不报错要么就是TYRCATCH吃掉了,要么就是你判断的条件有问题
解决方案:
断点调试,查看拼接完成的Sql语句是否正确.
解决方案:
SQL语句不带这样的,看了头晕,可以优化一下sql语句,用参数化sql语句。或则string.format格式化一下。stringsql=string.Format(@"insertintokhusers(username,pwd,realname,tel,sfz,addr,gender)values('{0}','{1}','{2}','{3}','{4}')",username.Text.ToString().Trim(),pwd.Text.ToString().Trim(),realname.Text.ToString().Trim(),tel.Text.ToString().Trim());最好用参数化sql
解决方案:
自己调试时最好的方法。
解决方案:
设个断点,一步步查看,看看值都在发生什么变化,就能找到出问题的地方了