标题:新手问一个password的问题
只看楼主
loveyouyou
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2004-9-1
 问题点数:0 回复次数:6 
新手问一个password的问题

我在数据库里定义了password为char类型。怎么sql查询出来的password是int型啊

用request得到的输入密码是char型啊。两者不匹配啊。没法判断是否相等。

要进行强制类型转化吗?

怎么会出现这种问题?

搜索更多相关主题的帖子: password 
2004-09-01 22:01
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 
你的代码我看看

天津网站建设 http://www./
2004-09-01 22:06
loveyouyou
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2004-9-1
得分:0 
<%@ Language=Jscript %> var stuid0=Request.Form("stuid"); var pwd0=Request.Form("pwd"); var Conn=Server.CreateObject("ADODB.Connection"); Conn.Open("driver={SQL Server};database=examsystem;server=localhost;uid=sa;pwd=sa"); var sql="Select password From ids where stuid="+stuid0; var rs=Conn.Execute(sql); if (pwd0==rs("password")) //就是这里没办法判断相等。password和pwd0查出的结果 //是一样的啊。rs("password")是int型。pwd0是char型,所以不能判断相等。但是数据库里我设的password是char型啊 { Response.Redirect("asp.htm"); } else {Response.Redirect("error.htm"); } Conn.close(); %>
2004-09-01 22:14
loveyouyou
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2004-9-1
得分:0 

<%@ Language=Jscript %>

var stuid0=Request.Form("stuid");

var pwd0=Request.Form("pwd");

var Conn=Server.CreateObject("ADODB.Connection");

Conn.Open("driver={SQL Server};database=examsystem;server=localhost;uid=sa;pwd=sa");

var sql="Select password From ids where stuid="+stuid0;

var rs=Conn.Execute(sql);

if (pwd0==rs("password")) //就是这里没办法判断相等。password和pwd0查出的结果//是一样的啊。rs("password")是int型。pwd0是char型,所以不能判断相等。但是数据库里我设的password是char型啊

{Response.Redirect("asp.htm");}

else{Response.Redirect("error.htm");}

Conn.close();%>

2004-09-01 22:17
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 

我不清楚怎么会这样,不过你试试用下面的方法

if (pwd0=="" + rs("password"))


天津网站建设 http://www./
2004-09-01 22:46
loveyouyou
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2004-9-1
得分:0 

也不行啊

我就真的很奇怪。你做的时候没有出现过这种问题吗?

如果我把pwd0=000;这样一个数;就可以了。但是如果让request默认是pwd0是char了

而从数据库中select出password的却是int。明明定义的是char啊。太奇怪了

2004-09-01 23:27
寒星
Rank: 1
等 级:新手上路
帖 子:455
专家分:0
注 册:2004-6-7
得分:0 

pwd0==rs("password")

两个字符串,你可以用strcomp比较字符串是否相等

if strcomp(pwd0,rs("password"))then............


http://www. 版主位置空缺
2004-09-02 13:35



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




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

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