2012-11-07 51 views
1

可能重複:
Why do I get 「Resource id #4」 when I apply print_r() to an array in PHP?
How do i 「echo」 a 「Resource id #6」 from a MySql response in PHP?

爲什麼我得到 「資源ID#6」 作爲在$結果?想要1或0:P

$sql = "SELECT * FROM members WHERE rchat=1 LIMIT 1"; 
$result = mysql_query($sql); 

if (!$result) { 
unlink($fn); 
//$fn = $_SESSION['sess_user'].'.txt'; 
$fn = 'hittaingen.txt'; 
mysql_query("UPDATE members SET rchat=1 room='" . $_SESSION['sess_user'] . "' WHERE  user='" . $_SESSION['sess_user'] . "'"); 
} 

else { 
    //$fn = $result['room'].'.txt'; 
    $fn = 'hitta.txt'; 
    mysql_query("UPDATE members SET rchat=2 room='" . $result['room'] . "' WHERE user='" . $_SESSION['sess_user'] . "'"); 
    } 

回答

2

mysql_query()僅返回結果對象的引用而不返回結果本身。所以爲了讓你0或1,你必須除了第一解析結果,使用例如mysql_fetch_array()

$row = mysql_fetch_array($result); 

,你一定要看看PDOmysqli,作爲該mysql_X()功能被標記爲過時,一般不認爲對SQL注入是安全的!