2 u013266600 u013266600 于 2014.12.12 19:25 提问

给数据库中添加数据,一直没成功,网页不 跳转。急!!

string connectionString = @"Data Source=DELL-PC;Initial Catalog = GXBYXS;User ID=sa;Password=123456 "; //定义字符串
System.Data.SqlClient.SqlConnection connection = new System.Data.SqlClient.SqlConnection(connectionString); //创建Sqlconnection对象
// string sql = "insert into zhuce values('" + DropDownList1.SelectedValue + "," + txtname.Text + "," + txtpassword.Text + "," + txtSpassword.Text + "," + txtemail.Text + ")";
string sql=string.Format("insert into zhuce(Usertype,Username,Usermima,Usersmima,Useremail) values('{0}','{1}','{2}','{3}','{4}')", DropDownList1.SelectedValue .ToString(),
txtname.Text.ToString(), txtpassword.Text.ToString(),txtSpassword.Text.ToString(),txtemail.Text.ToString()) ;
try
{

        connection.Open();    //打开数据库的连接
        //  SqlCommand command=new SqlCommand(sql,connection);     //创建SqlCommand对象
        SqlCommand command = connection.CreateCommand();
        command.CommandText = sql;
        command.CommandType = CommandType.Text;


         int result =command.ExecuteNonQuery();
        if (result == 1)
        {

            Page.Response.Redirect("login.aspx");
        }
    }

5个回答

caozhy
caozhy   Ds   Rxr 2014.12.12 20:12

if (result == 1)
你的插入语句不会返回1。
除非你在string sql = "..."
下面加上sql += ";select 1;"

guwei4037
guwei4037   Ds   Rxr 2014.12.12 20:30

int result =command.ExecuteNonQuery(); 这句话可能并不返回1,所以就不执行里面的跳转方法了。

showbo
showbo   Ds   Rxr 2014.12.12 20:34

去掉try..catch语句看看,你的sql语句有问题导致执行到catch语句了吧,你拼接sql语句也没有替换'字符串,很容易被sql注入和存在rss漏洞

 string sql=string.Format("insert into zhuce(Usertype,Username,Usermima,Usersmima,Useremail) values('{0}','{1}','{2}','{3}','{4}')", DropDownList1.SelectedValue .ToString(),
txtname.Text.Replace("'","''"), txtpassword.Text.Replace("'","''"),txtSpassword.Text.Replace("'","''"),txtemail.Replace("'","''")) ;
showbo
showbo 回复u013266600: 那就采纳吧(^_^)
大约 3 年之前 回复
u013266600
u013266600 回复showbo: 就是那个问题,我解决啦!谢谢喽!
大约 3 年之前 回复
u013266600
u013266600 回复showbo:
大约 3 年之前 回复
u013266600
u013266600 回复showbo: “System.Web.UI.WebControls.TextBox”不包含“Replace”的定义,并且找不到可接受类型为“System.Web.UI.WebControls.TextBox”的第一个参数的扩展方法“Replace”(是否缺少 using 指令或程序集引用?)
大约 3 年之前 回复
u013266600
u013266600 回复showbo:
大约 3 年之前 回复
showbo
showbo xss漏洞。。嘿嘿,搞错。。。
大约 3 年之前 回复
yenange
yenange   2014.12.27 16:04

晕, 你这做法还是比较初级, 建议你用上 SQLHelper吧, 要不会有SQL注入的危险。

地址:
http://blog.csdn.net/yenange/article/details/12797203

zanseo
zanseo   2014.12.27 16:21

遇到同样的问题,不知道怎么解决。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!