php与mysql 连接网页登录验证的问题
<html><head><metahttp-equiv="content-type"content="html/text;charset=utf-8"/></head><...
<html>
<head>
<meta http-equiv="content-type" content="html/text; charset=utf-8" />
</head>
<body>
<?php
ob_start();
header("Content-Type: text/html;charset=utf-8");
$con=mysql_connect("localhost","root","123456");
if(!$con)
{
die("无法连接数据库,请重试");
}
$com=mysql_select_db("work1",$con);
mysql_query("set names utf8");
if(!$com)
{
die('无法连接数据库,请重试');
}
$today=date("Y-m-d H:i:s");
$query="select * from work1 where username='$_POST[username]' and password='$_POST[password]' and nickname='$_POST[nickname]'";
$result=mysql_query($query,$con);
$numrows = mysql_num_rows($result);
if($numrows!==0){
echo 非法用户;
echo 请先注册;
}
else{
$row=mysql_fetch_array($result);
$id=$row[0];
$query="update work1 set lastlogin=$today
where work1=1";
$result=mysql_query($query);
SetCookie("usercookie","欢迎你,$name");
echo 登录成功 ;
echo 请进 ;
}
mysql_close($con);
?>
</body>
</html>
哪里出错了,为什么我在密码和昵称里不管输入什么都是成功 展开
<head>
<meta http-equiv="content-type" content="html/text; charset=utf-8" />
</head>
<body>
<?php
ob_start();
header("Content-Type: text/html;charset=utf-8");
$con=mysql_connect("localhost","root","123456");
if(!$con)
{
die("无法连接数据库,请重试");
}
$com=mysql_select_db("work1",$con);
mysql_query("set names utf8");
if(!$com)
{
die('无法连接数据库,请重试');
}
$today=date("Y-m-d H:i:s");
$query="select * from work1 where username='$_POST[username]' and password='$_POST[password]' and nickname='$_POST[nickname]'";
$result=mysql_query($query,$con);
$numrows = mysql_num_rows($result);
if($numrows!==0){
echo 非法用户;
echo 请先注册;
}
else{
$row=mysql_fetch_array($result);
$id=$row[0];
$query="update work1 set lastlogin=$today
where work1=1";
$result=mysql_query($query);
SetCookie("usercookie","欢迎你,$name");
echo 登录成功 ;
echo 请进 ;
}
mysql_close($con);
?>
</body>
</html>
哪里出错了,为什么我在密码和昵称里不管输入什么都是成功 展开
5个回答
展开全部
if($numrows!==0)
你这句有问题吧!
你判断numrows不为0的时候进行判断说非法用户
当你用别的非法用户进入时就能进入了!
感觉你的数据库连接可能也有点问题
你这句有问题吧!
你判断numrows不为0的时候进行判断说非法用户
当你用别的非法用户进入时就能进入了!
感觉你的数据库连接可能也有点问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$numrows查询出来为0,说明未注册,不为0说明说明是合法用户,而且不等于好像是!=,貌似一个等号
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if($numrows!==0)
改为
if($numrows==0){
改为
if($numrows==0){
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
。应该至少有个值把,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$numrows==0;不是!==0
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询