为什么这个函数总是返回真?

liaomingxue 2003-12-23 06:17:29
function checkPassword($name,$password)
{
$link = mysql_connect(CONNECT_SERVER,CONNECT_USER) or die("Could't connect to server".mysql_error());

mysql_select_db(FORUM_DB_NAME, $link) or die("Couldnt' select db".mysql_error());

$sql="SELECT * FROM member WHERE name='".$name."' AND password='".$password."'";
$result = mysql_query($sql,$link);

if($result==NULL) return false;
else return true;
}
不管传递什么参数,它总是返回真,急死我了.
...全文
40 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
phanx 2003-12-23
  • 打赏
  • 举报
回复
当然,你如果对这一步作异常处理也是可以的 :-)
liaomingxue 2003-12-23
  • 打赏
  • 举报
回复
谢谢,太好了,你说的是对的,不过我一般这么做:
$result = mysql_query($sql,$link);

if($result!=NULL)
{
$row = mysql_fetch_row($result);
if(!empty($row)) return true;
}
因为我担心不正确的result会导致fetch异常,不知这样好不好,
或者改成"result!=false",你看呢?
phanx 2003-12-23
  • 打赏
  • 举报
回复
因为$result 是由 mysql_query($sql,$link)返回的一个resource,当然不会为NULL.
如果你想要的是结果是不是NULL 需要加如一句
$row = mysql_fetch_row($result);
然后判断 if(empty($row)) return false;

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧