2012-01-17 64 views
0

可能重複:
PHP Error: mysql_fetch_array() expects parameter 1 to be resource, boolean given如何擺脫這一警告的 'mysql_fetch_array()預計參數1是資源'

PHP文件

<?php 
    session_start(); 
    $uniqueid = $_SESSION['unique']; 
    $result = mysql_query("SELECT * FROM users_info WHERE email='$uniqueid'"); 
    $user_mini_info = mysql_fetch_array($result); 
?> 

當我執行我的PHP文件,我得到這個警告

Warning: mysql_fetch_array() expects parameter 1 to be resource, 
boolean given in .\profile.php on line 5 

我不知道這是什麼意思?爲什麼我得到這個警告?任何人都可以向我解釋這個警告的真正含義,我如何擺脫它?由於此警告,我相信我無法更新從數據庫中取回的我的頁面內容。任何幫助極大讚賞。謝謝

+1

變化的代碼'$結果= mysql_query(...)或死亡(mysql_error());'看出爲什麼查詢失敗。 – 2012-01-17 20:39:17

+0

您的代碼遭受SQL注入。放下一切,並在這裏閱讀 - http://en.wikipedia.org/wiki/SQL_injection – Kenaniah 2012-01-17 20:39:23

+0

@Kenaniah:也許吧。會話變量由服務器設置並存儲在服務器上,客戶端無法修改該變量...只要該變量未設置爲客戶端直接輸入的內容,他就可以。 – animuson 2012-01-17 20:42:17

回答

2

你越來越「錯誤」,這意味着發生了錯誤。請在mysql_query上查詢documentation

嘗試運行echo(mysql_error());以查看錯誤是什麼。

0

一種解決方案是

session_start(); 
$user_mini_info = array(); 
$uniqueid = $_SESSION['unique']; 
$result = mysql_query("SELECT * FROM users_info WHERE email='$uniqueid'"); 
if(!empty($result)) { 
    $user_mini_info = mysql_fetch_array($result); 
} 
相關問題