用.NET做网站时遇到的问题
在做网站的过程中比如:注册一些信息、留言、评论等,调试时页面都不出现错误,但是添加的这些信息却都显示不出来,也添加不到数据库中,为什么呢?HELP!!!多谢eg:其中一个注册的单击事件 protected void Button1_Click(object sender, EventArgs e)
{
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
{
string sql;
sql = "select id from khusers where username='" + username.Text.ToString().Trim() + "'";
DataSet result = new DataSet();
result = new Class1().hsggetdata(sql);
if (result != null)
{
if (result.Tables[0].Rows.Count > 0)
{
Response.Write("<script>javascript:alert('该用户名已经存在,请换其他用户名');</script>");
}
else
{
string gender;
if (RadioButton1.Checked)
{
gender = "男";
}
else
{
gender = "女";
}
sql = "insert into khusers(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 + "')";
int result2;
result2 = new Class1().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)
是什么道理? --------------------编程问答--------------------
上次不是给你说吗? --------------------编程问答-------------------- 你在运行的时候把sql拿出来看看啊, 鬼知道你的返回值是多少啊 万一是2怎么办 --------------------编程问答-------------------- 看着都眼花,楼主考我们眼里和耐力吗?
你至少贴下错误信息啊,运行后总有提示吧?
没有提示就调试下,看哪里有错在做修改,这样叫我们怎么弄?
--------------------编程问答-------------------- 单步调试找出错误 --------------------编程问答-------------------- 调试一下,这样的代码看起脑火,,,,
hsgexucute(sql),这个方法里面是不是有try catch,把错给吃掉了。 --------------------编程问答-------------------- 加断点调试,或者拷贝出sql代码在数据库里面单独运行insert语句。看看sql有没有问题 --------------------编程问答--------------------
+++
断点调试加单个sql测试 --------------------编程问答--------------------
我也觉是这里面有TRY CATHCH吧错误吃掉了 --------------------编程问答-------------------- result2 == 1你确定?? --------------------编程问答-------------------- 这样的问题只要 断点 单步调试, 就会有结果。 你这么问, 谁知道哪错啊 --------------------编程问答-------------------- 你看一下,你拼出来的sql语句是怎样的?
--------------------编程问答-------------------- 在程序中设置断点,单步调试下,就可以找到错误。 --------------------编程问答-------------------- 断点调试呀,看看什么地方的值和你理想的状态不一样。应该就是那个地方有问题了。不报错要么就是TYR CATCH吃掉了,要么就是你判断的条件有问题 --------------------编程问答-------------------- 断点调试,查看拼接完成的Sql语句是否正确. --------------------编程问答-------------------- SQL语句不带这样的,看了头晕,
可以优化一下sql语句,用参数化sql语句。或则string.format格式化一下。
string sql =string.Format(@"
insert into khusers(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 --------------------编程问答-------------------- 自己调试时最好的方法。 --------------------编程问答-------------------- 设个断点,一步步查看,看看值都在发生什么变化,就能找到出问题的地方了
补充:.NET技术 , ASP.NET