コード全体:
<?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");
}
}
}
?>
2つの列を持つテーブル(admin)を持つデータベースがあります。最初の列はでusname
、2番目の列はですpassw
。それでも、ユーザー名とパスワードを入力すると、コンパイラがこのエラーを表示します。このコンパイラの警告を解決するにはどうすればよいですか。
警告:mysql_fetch_array()は、パラメーター1がリソースであると想定しています。文字列はC:\ xampp \ htdocs \ ramznegar1\index.phpの60行目にあります。
変更する必要があります
$ admin_result = mysql_fetch_array($ query、MYSQL_ASSOC)
に
$ admin_result = mysql_fetch_array($ admin_result、MYSQL_ASSOC)
コードを編集しましたが、このエラーが発生しました。
警告:mysql_fetch_array()は、パラメーター1がリソースであると想定しています。ブール値はC:\ xampp \ htdocs \ ramznegar1\index.phpの60行目にあります。
新しいコードは次のとおりです:http://pastebin.com/ycNT0XqM