标题:[求助]ASP.NET 注册页面提交出现问题
只看楼主
bavfhpdn66
Rank: 1
等 级:新手上路
威 望:1
帖 子:72
专家分:0
注 册:2007-4-11
 问题点数:0 回复次数:8 
[求助]ASP.NET 注册页面提交出现问题

下面注册页面的代码:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class login : System.Web.UI.Page
{
SqlConnection strcon = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["ccc"]);
Class2 sh = new Class2();
protected void Page_Load(object sender, EventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{
if (useryz(TextBox1.Text.ToString())) //验证用户是否已存在
{
return;
}
strcon.Close();
strcon.Open();
string cardtype;
string username = TextBox1.Text.ToString();
string truename = TextBox2.Text.ToString();
string password = TextBox3.Text.ToString();
string city = TextBox5.Text.ToString();
string address = TextBox6.Text.ToString();
string postcode = TextBox7.Text.ToString();
string cardno = TextBox8.Text.ToString();
//RBL1.Items[0].Selected = true;
if (RBL1.Items[0].Selected)
cardtype = "身份证";
else
if (RBL1.Items[1].Selected)
cardtype = "学生证";
else
cardtype = "其它";
string tel = TextBox9.Text.ToString();
string email = TextBox10.Text.ToString();
string sqlinsert = "insert into tb_member (username,truename,password,city,address,postcode,cardno,cardtype,tel,email) values('" + username + "','" + truename + "','" + password + "','" + city + "','" + address + "','" + postcode + "','" + cardno + "','" + cardtype + "','" + tel + "','" + email + "')";
SqlCommand comm = strcon.CreateCommand();
comm.CommandText = sqlinsert;
SqlTransaction myTransaction = strcon.BeginTransaction(); //开始一个事务
comm.Transaction = myTransaction;
try
{
comm.ExecuteNonQuery();
myTransaction.Commit(); //提交事务
ClearTextBox();
string mes = "恭喜 注册成功!";
Response.Write("<script>alert('" + mes + "');location='login.aspx'</script>");

}
catch
{
myTransaction.Rollback(); //回滚事务
}
finally
{
ClearTextBox();
strcon.Close();
}
}
protected Boolean useryz(string username) //验证用户是否已存在
{
strcon.Open();
SqlCommand comm = strcon.CreateCommand();
comm.CommandText = "select username from tb_member";
SqlDataReader reader = comm.ExecuteReader();
while (reader.Read())
{
if (reader[0].ToString() == username)
{
Response.Write(sh.showmessage("该用户已存在!"));
strcon.Close();
return true ;
}
}
strcon.Close();
return false;
}
protected void RBL1_SelectedIndexChanged(object sender, EventArgs e)
{

}
protected void Button3_Click(object sender, EventArgs e)
{
ClearTextBox();
}
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("../Default.aspx");
}
protected void ClearTextBox()
{
TextBox1.Text = string.Empty;
TextBox2.Text = string.Empty;
TextBox3.Text = string.Empty;
TextBox4.Text = string.Empty;
TextBox5.Text = string.Empty;
TextBox6.Text = string.Empty;
TextBox7.Text = string.Empty;
TextBox8.Text = string.Empty;
TextBox9.Text = string.Empty;
TextBox10.Text = string.Empty;
}
}
当我填写好注册信息后提交时不成功!
后来我就单步运行
当执行到 try
{
comm.ExecuteNonQuery();时就跳到
catch
{
myTransaction.Rollback(); //回滚事务
}

结果数据都没写到数据库

想在此请教大家一下
错在哪里?
谢谢大家!

搜索更多相关主题的帖子: using System NET Web ASP 
2007-04-20 15:51
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8074
专家分:6657
注 册:2005-11-7
得分:0 
一般都是sql语句的错误,楼主把异常处理去掉,看看是什么错

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2007-04-20 15:55
川流不息
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2000
专家分:47
注 册:2006-11-8
得分:0 
你把SQL語句打印出來,然後拿到查詢分析器中運行一遍。

日月更替,天地輪回,人間已是幾回春。 江山不老,人正少年,只手能擎半邊天。
2007-04-20 16:08
bavfhpdn66
Rank: 1
等 级:新手上路
威 望:1
帖 子:72
专家分:0
注 册:2007-4-11
得分:0 

将截断字符串或二进制数据。
语句已终止。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 将截断字符串或二进制数据。
语句已终止。

源错误:


行 53: try
行 54: {
行 55: comm.ExecuteNonQuery();
行 56: myTransaction.Commit(); //提交事务
行 57: ClearTextBox();

源文件: d:\business\login\login.aspx.cs 行: 55

堆栈跟踪:


[SqlException (0x80131904): 将截断字符串或二进制数据。
语句已终止。]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +95
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +82
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +346
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +3244
System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) +272
System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) +367
System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +149
login.Button1_Click(Object sender, EventArgs e) in d:\business\login\login.aspx.cs:55
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +96
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +116
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +31
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +32
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +72
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3837


奋起直追,犹未晚也!
2007-04-20 16:35
川流不息
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2000
专家分:47
注 册:2006-11-8
得分:0 
是你SQL語句的問題,你把SQL打印出來看看。肯定是。

日月更替,天地輪回,人間已是幾回春。 江山不老,人正少年,只手能擎半邊天。
2007-04-20 17:30
bavfhpdn66
Rank: 1
等 级:新手上路
威 望:1
帖 子:72
专家分:0
注 册:2007-4-11
得分:0 

呵呵
问题解决了
谢谢大家的及时帮助!


奋起直追,犹未晚也!
2007-04-20 17:33
cyyu_ryh
Rank: 8Rank: 8
等 级:贵宾
威 望:45
帖 子:1899
专家分:176
注 册:2006-10-21
得分:0 
添加时
email) 和values('" + username + ,他们之间打空格没哦

有事无事都密我. MSN: cyyu_ryh@hotmail.co.jp E-mail: cyyu_ryh@
2007-04-20 17:35
球球
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:1146
专家分:265
注 册:2005-11-28
得分:0 
将截断字符串或二进制数据
数据类型长度不够

好累
2007-04-20 19:28
bavfhpdn66
Rank: 1
等 级:新手上路
威 望:1
帖 子:72
专家分:0
注 册:2007-4-11
得分:0 

呵呵
你说的一点都没错啊
谢谢你!


奋起直追,犹未晚也!
2007-04-23 03:08



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-133492-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.855323 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved