我目前正試圖更新我的數據庫中的特定記錄,儘管我已經徹底檢查了語法chrome告訴我,我在某處出錯了。MYSQL更新查詢語法問題
任何建議,將不勝感激
$title = $_POST["title"];
$alttext = $_POST["alttext"];
$description = $_POST["description"];
$price = $_POST["price"];
$id = $_POST["ID"];
$insertQuery = "UPDATE cmsproducts SET Title = '$title', Alt_Text = '$alttext', Source = '$target_path', Description = '$description', Price = $price WHERE ID = $id";
// Save the form data into the database
if ($result = $connector->query($insertQuery)){
// It worked, give confirmation
echo '<center><b><span style="color: #FF0000;">Product added to the database</span></b></center><br /><br />';
}else{
// It hasn't worked so stop. Better error handling code would be good here!
echo('<center>Sorry, there was an error saving to the database</center>');
echo "<center><b>File Name:</b> ".$target_path."<br/>";
die(mysql_error());
}
我試圖查詢不變量來檢查它是否是一個問題存在,但它仍然在我尖叫錯誤:
對不起,有一個保存到數據庫時出錯 您的SQL語法有錯誤;請檢查與您的MySQL服務器版本相對應的手冊,以便在測試中使用正確的語法,Source = ../images/Pictures /,Description = This is a test image of test'at line 1
回顯您的$ insertQuery變量並檢查最終查詢。也許有些東西是空的或有任何格式/編碼問題,誰知道(你沒有檢查POST輸入的方式,這是一個安全問題)。 – Alfabravo 2011-04-19 19:17:45
我們無法幫助您,直到您告訴我們「post」變量中傳遞的內容以及數據庫模式的外觀。你也必須防止SQL注入! – ohmusama 2011-04-19 19:20:17
這也是一個安全問題。您可能想要使用mysql_real_escape_string或其他方式來防止SQL注入攻擊。 – 2011-04-19 19:21:28