| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1272 人关注过本帖
标题:求助!我的代码错在哪里?
只看楼主 加入收藏
zhangruan
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-5-9
收藏
 问题点数:0 回复次数:11 
求助!我的代码错在哪里?
我写了个登陆后修改密码的代码,可是修改总是不成功,麻烦朋友们帮忙看看,谢谢!
数据库表是putongyonghu,用户名是UserId,密码是pwd.
下面的代码对验证旧密码是否正确和新密码是否重复,都能实现,就是更改不了数据库表中用户密码!
string username=Session["UserId"].ToString().Trim();//取得用户名
string password=Session["pwd"].ToString().Trim();//取得旧密码
            
string Pwd=this.TBpass.Text;//旧密码框
string pass=this.TBnewpass.Text;//密码框
string cpass=this.TBnewpass2.Text;//确认密码框
if(password.Trim()!=this.TBpass.Text)
{
  this.Response.Write("<script>alert('旧密码不正确!');</script>");
  return;
}
else
{
   if(pass != cpass)
  {
    this.Response.Write("<script>alert('两次输入的密码不一致!');</script>");
    return;
  }
   else
  {
     string sqlConnString="server=.;Uid=sa;Pwd=sa;Database=zra".ToString();
     SqlConnection conn=new SqlConnection(sqlConnString);
    string sql="update putongyonghu set pwd='"+this.TBnewpass.Text+"' where UserId='"+username.Trim()+"'";
     SqlCommand cm=new SqlCommand("sql",conn);
     conn.Open();
    try
   {  
    int resultrow=cm.ExecuteNonQuery();
    conn.Close();
    this.Response.Write("<script>alert('操作已成功!');</script>");

    }
    catch
    {
      conn.Close();
     }

       }
}
问题不清楚的我还可以在补充,麻烦大家帮忙看下,我是新手,实在是找不出问题在哪了!谢谢
搜索更多相关主题的帖子: 代码 
2008-05-15 11:57
hebingbing
Rank: 6Rank: 6
来 自:黄土高坡
等 级:贵宾
威 望:27
帖 子:3417
专家分:371
注 册:2007-10-22
收藏
得分:0 
int resultrow=cm.ExecuteNonQuery(); 问题应该在这,我看你的int resultrow也没有用嘛。
如果resultrow没有用的话直接改成
cm.ExecuteNonQuery();
如果你用到了的话,用convent转换成int型的……
2008-05-15 12:09
zhangruan
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-5-9
收藏
得分:0 
版主 ,还是不行,修改的密码添补到数据库表里去,是不是还有其他的原因??
2008-05-15 13:21
hebingbing
Rank: 6Rank: 6
来 自:黄土高坡
等 级:贵宾
威 望:27
帖 子:3417
专家分:371
注 册:2007-10-22
收藏
得分:0 
这个肯定是你的try的时候出现了错误,所以跳出了try……
你可以将try先注释掉,看看到底是什么错误……
还有你的UserId字段是什么?是用户名吗?要是不是的话你where的时候却是where他们两相等了……
2008-05-15 13:52
zhangruan
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-5-9
收藏
得分:0 
我把try注释掉了,在运行,还是和原来一样,运行的时候没有错误,就是无法把修改的密码添加到数据库表中。
UserId字段是用户名
2008-05-15 14:01
lovexran
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-3-20
收藏
得分:0 
回复 1# 的帖子
你用设个断点试试吧!
2008-05-15 16:17
hebingbing
Rank: 6Rank: 6
来 自:黄土高坡
等 级:贵宾
威 望:27
帖 子:3417
专家分:371
注 册:2007-10-22
收藏
得分:0 
你注释掉了try运行不出错的话,那就是where语句后面的条件不成立……
也就是说UserId='"+username.Trim()+"'这句不成立
2008-05-15 16:42
zhangruan
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-5-9
收藏
得分:0 
{System.Data.SqlClient.SqlConnection}   
             {System.Data.SqlClient.SqlConnection}   
          _constr:   {System.Data.SqlClient.SqlConnectionString}   
          _fIsClosing:   false   
          _hidePasswordPwd:   false   
          _infoMessageEventHandler:   <未定义的值>   
          _internalConnection:   <未定义的值>   
          _localTransaction:   <未定义的值>   
          _objectState:   Closed   
          _preparedCommands:   <未定义的值>   
          _reader:   <未定义的值>   
          _sdc:   <未定义的值>   
          _SqlClientPermission:   <未定义的值>   
          _stateChangeEventHandler:   <未定义的值>   
             ConnectionString    "server=.;Uid=sa;Pwd=sa;Database=zra"    
          ConnectionTimeout:   15   
          Database:   "zra"   
          DataSource:   .  
          IsClosing:   false   
          IsShiloh:   <错误:   发生   {System.NullReferenceException}   类型的异常>   
          LocalTransaction:   <未定义的值>   
          PacketSize:   8192   
          Parser:   <未定义的值>   
          Reader:   <未定义的值>   
          ServerVersion:   <错误:   发生   {System.InvalidOperationException}   类型的异常>   
          SqlClientPermission:   {System.Data.SqlClient.SqlClientPermission}   
          State:   Closed   
          WorkstationId    "ZRA-35C1CA64B76"    
这是我设断点,在自动窗口显示的内容,是什么意识阿?我才开始学,看不懂。是不是连接不上数据库?
2008-05-15 17:27
hoya
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:538
专家分:0
注 册:2006-6-27
收藏
得分:0 
1.检查数据库链接string sqlConnString="server=.;Uid=sa;Pwd=sa;Database=zra".ToString();
是否有问题;
2.SqlCommand cm=new SqlCommand("sql",conn);
这句是错的,new SqlCommand("sql",conn);sql是不加引号的,引用上面定义的变量sql。

[[it] 本帖最后由 hoya 于 2008-5-16 09:24 编辑 [/it]]

妈的...一天能卖一颗就很不错了...
2008-05-16 09:22
zhangruan
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-5-9
收藏
得分:0 
这句是错的,new SqlCommand("sql",conn);sql是不加引号的,引用上面定义的变量sql

就是这个错误!!
终于解决了~

谢谢大家了!~~
2008-05-16 09:56
快速回复:求助!我的代码错在哪里?
数据加载中...
 
   



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

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