2013-07-17 33 views
0

我試圖找出爲什麼下面的PHP代碼給了我這個錯誤:MYSQL錯誤信息貫穿DQ查詢精細

有運行錯誤的查詢

[You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'query2' at line 1]

如果我運行該查詢直接從MYSQL運行沒有問題....
請幫幫忙,我一直盯着這個代碼在過去40分鐘... ...

if($db->connect_errno > 0){ 
    die('Unable to connect to database [' . $db->connect_error . ']'); 
} 

$query2 = ("UPDATE phpbb_users SET user_password='$hashPW' WHERE user_id='$id' AND username='$username';"); 

if(!$result = $db->query(query2)){ 
    die('There was an error running the query [' . $db->error . ']'); 
}  

$mysqli->close(); 

回答

2

更改

if(!$result = $db->query(query2)){ 

if(!$result = $db->query($query2)){ 
         ^

$中缺少的$query2可變

前在一個側面說明:你在當前狀態下的代碼很容易出現的SQL注入。請考慮使用prepared statements

+1

不錯的抓有 – bansi

+0

哇,那一定是晚了,謝謝!我去睡覺了.... – HondaKillrsx

1

你缺少的一個線$ ...

if ($db->connect_errno > 0) { 
    die('Unable to connect to database [' . $db->connect_error . ']'); 
} 

$query2 = ("UPDATE phpbb_users SET user_password='$hashPW' WHERE user_id='$id' AND username='$username';"); 

if (!$result = $db->query($query2)) { 
    die('There was an error running the query [' . $db->error . ']'); 
} 

$mysqli->close();