改过,自己试下!using System; using System.Data; using System.Data.SqlClient; using System.Text; using System.Text.RegularExpressions; using System.Web; using System.Net; public partial class Web_Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string strconnection = "Server=127.0.0.1;uid=sa;password=wxj;database=ztx;"; string strsql; SqlConnection cnn; SqlDataReader dataR; SqlCommand cmd; cnn = new SqlConnection(strconnection); cnn.Open(); strsql="SELECT i_name FROM test WHERE i_name='"+Request.Form["name"].ToString()+"'";
cmd= new SqlCommand(strsql,cnn); dataR= cmd.ExecuteReader(); if (dataR.Read()) {
所以:
while (sqldatareader_one.Read())//一直为false,不会执行while insert 语句改为用comand执行
验证sqldatareader_one["i_name"]== Request.Form["name"])时``应该试用select语句,这时使用sqldatareade执行
using System.Data;
using System.Data.SqlClient;
using System.Text;
using System.Text.RegularExpressions;
using System.Web;
using System.Net;
public partial class Web_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string strconnection = "Server=127.0.0.1;uid=sa;password=wxj;database=ztx;";
string strsql;
SqlConnection cnn;
SqlDataReader dataR;
SqlCommand cmd; cnn = new SqlConnection(strconnection);
cnn.Open(); strsql="SELECT i_name FROM test WHERE i_name='"+Request.Form["name"].ToString()+"'";
cmd= new SqlCommand(strsql,cnn);
dataR= cmd.ExecuteReader(); if (dataR.Read())
{
Response.Write("你注册的用户名已经被别人注册了!");
}
else
{
strsql="insert into test(i_name,i_pswd)values"+"('"+Request.Form["name"].ToString()+"','"+Request.Form["password"].ToString()+"')";
cmd=new SqlCommand(strsql,cnn);
try
{
cmd.ExecuteNonQuery();
Response.Write("恭喜你,注册成功!");
}
catch (SqlException ex)
{
cnn.Closed();
Response.Write("插入出错:"+ex.Message);
}
}
dataR.Closed();
cmd.Dispose();
cnn.Closed();
}
}