Php 如何登录我的帐户?
这是我的密码。但是,它不能正常工作,一旦我使用用户名和密码登录,就会显示如下错误消息:Php 如何登录我的帐户?,php,mysql,login,Php,Mysql,Login,这是我的密码。但是,它不能正常工作,一旦我使用用户名和密码登录,就会显示如下错误消息: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\lumbiniinternational_hotel\administrator\login.php on line 26 Warning: mysql_num_rows() expects parameter 1 to
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\lumbiniinternational_hotel\administrator\login.php on line 26
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\lumbiniinternational_hotel\administrator\login.php on line 27
我的全部代码是:
if(isset($_POST['submit'])){
$query="SELECT * FROM users WHERE username='".$_POST['username']."' AND password='".$_POST['password']."' AND role='administrator'";
$result=mysql_query($query);
$row=mysql_fetch_array($result,MYSQL_ASSOC);
if(mysql_num_rows($result)>0){
header("Location:index.php");
$_SESSION['username']=$row['username'];
}else
$message=get_word($lang,"Wrong username or password.");
}
?>
检查查询是否出错,在mysql\u查询的末尾添加一个
或die(mysql\u error())
if(isset($_POST['submit'])){
$query="SELECT * FROM users WHERE username='".$_POST['username']."' AND password='".$_POST['password']."' AND role='administrator'";
$result=mysql_query($query) or die(mysql_error());
$row=mysql_fetch_array($result,MYSQL_ASSOC);
if(mysql_num_rows($result)>0){
header("Location:index.php");
$_SESSION['username']=$row['username'];
}else
$message=get_word($lang,"Wrong username or password.");
}
此外,我建议您直接使用mysql\u fetch\u assoc
而不是mysql\u fetch\u array
Mirko这两个错误都表明您的查询是错误的。
确保字段名称拼写正确。
用`like this:
select `field_name` from `table_name`
换衣服
$result=mysql_query($query);
与
这将向您显示正确的sql错误
最后作为旁注:-停止使用mysql扩展并切换到mysqli_uuo或PDO。
-在将POST数据直接用于查询之前,请对其进行清理我认为此处缺少while循环,如下所示:在发布问题之前,请询问“我如何解决此错误?”?"在搜索框中搜索实际的错误消息。在那里,你可能会从有同样问题的人那里找到其他问题,然后你可以了解他们是如何解决的。mirko,你的代码是:没有选择数据库!!因为你需要连接到数据库。使用
mysql\u connect
和mysql\u select\u db
$result=mysql_query($query) or die(mysql_error());