2013-04-17 56 views
0

我一直在撓我的頭在最後一個小時,只是不能得到這個工作。我的SQL更新錯誤

這樣做查詢:

$dbtoken = mysql_real_escape_string($invite_token); 
$dbexpire = mysql_real_escape_string($invite_expire); 
$dbid = mysql_real_escape_string($uid); 
$update_user = mysql_query("UPDATE inviters SET invitetoken='$dbtoken', inviteexpire='$dbexpire' WHERE uid='$dbid'"); 
$save = mysql_query($update_user) or die(mysql_error()); 

它給我這個錯誤:

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 '1' at line 1

+2

有沒有必要添加整數值單引號 –

+0

打印出來的實際的SQL語句你我確信你會自己看到錯誤。 –

+0

刪除報價周圍的uid值,回聲你的SQL語句,運行它在db測試然後把它放在你的代碼.. – saveATcode

回答

0

你正在做mysql_query();兩次。一旦在最後一行。一旦在它上面的線上。

返回第一次1(成功)

您嘗試執行1作爲查詢

PS中的第二次。抓一小時頭可能會導致皮膚過敏。

1

您發送您的第一個查詢的結果作爲你的第二個查詢的SQL語句:

$update_user = mysql_query("UPDATE inviters SET invitetoken='$dbtoken', 
inviteexpire='$dbexpire' WHERE uid='$dbid'"); 
$save = mysql_query($update_user) or die(mysql_error()); 

$ update_user包含的結果,你給回的mysql_query。試試這個:

$update_user = "UPDATE inviters SET invitetoken='$dbtoken', 
inviteexpire='$dbexpire' WHERE uid='$dbid'"; 
$save = mysql_query($update_user) or die(mysql_error()); 

順便說一句:使用Mysqli而不是Mysql_語句,它們被棄用和不安全。

1

存在錯誤您試圖執行兩次查詢。刪除it.ie的第二次執行刪除此

$save = mysql_query($update_user) or die(mysql_error()); 

它正試圖做到這一點

$save = mysql_query(1); 

這是不對的