$sql="SELECT count(*) FROM `use` WHERE username = '$username' AND PASSWORD = '$password'";
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
$num=$row[0];
if($num>0)
......
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
$num=$row[0];
if($num>0)
......
echo $sql ;
输出你的sql放在phpmyadmin上面执行下,看看有没有结果。估计是编码问题
可以看到用户名被传递过来了,可是password好像没有被传过来,所以才默认为null吗?
我试着把sql语句改成$sql="SELECT *FROM `use` WHERE username = '$username' AND PASSWORD = '123'";
我的数据库表里有一个username为aaa,password为123的记录,我当我在用户名里敲入aaa的时候就能登录了,
看来是password没有传递过来!
可是为什么没有传递过来呢?怎么解决?
$sql="SELECT * FROM `use` WHERE username = '$username' AND PASSWORD = '$password'";
改成
$sql="SELECT * FROM use WHERE username = '$username' AND PASSWORD = '$password'";
试试,use表名不要加引号
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body><form action="logn.php" method="post">
<p>用户名:<input type="text" name="username" size="30"></p>
<p>密 码:<input type="password" name="password" size="20"></p>
<P><input type="submit" value="提交"> <input type="reset" value="重置" ></p>
</form>
</body>
</html>
这是我表单的源代码