整个代码:
<?php
if (isset($_POST['usname']) && isset($_POST['pasw'])){
$username = mysql_ramznegar($_POST['usname'],$link);
$password = mysql_ramznegar($_POST['pasw'],$link);
$query = "SELECT * FROM `admin` WHERE `usname` = $username";
$admin_result = mysql_query($query,$link);
$admin_result = mysql_fetch_array($query,MYSQL_ASSOC);
if($admin_result['usname']==$username && $admin_result['passw']==$password){
if($admin_result[usname] == "admin"){
$_SESSION['auth'] = 1;
redirect("panel");
exit;
}
else{
echo 'ur username or password is invalid';
redirect("index.php");
}
}
}
?>
我有一个带有两列的表(管理员)的数据库,第一列是usname
,第二列是passw
,但是当我输入用户名和密码编译器向我显示此错误时,我选择了查询,我该如何解决此编译器警告:
警告:mysql_fetch_array() 期望参数 1 是资源,第 60 行 C:\xampp\htdocs\ramznegar1\index.php 中给出的字符串
你应该改变
$admin_result = mysql_fetch_array($query, MYSQL_ASSOC)
至
$admin_result = mysql_fetch_array($admin_result, MYSQL_ASSOC)
我编辑了我的代码,但我又遇到了这个错误:
警告:mysql_fetch_array() 期望参数 1 是资源,布尔值在第 60 行的 C:\xampp\htdocs\ramznegar1\index.php 中给出
新代码是: http: //pastebin.com/ycNT0XqM