親愛的朋友我試圖更新重新編碼,但下面的消息總是能想出更新我的紀錄
「您的SQL語法錯誤;檢查對應於您的MySQL服務器版本正確的語法手冊在'9號線附近'使用'
該代碼看起來不錯,但我不明白我做錯了什麼可以有人幫助。 在此先感謝。
<?php
if(isset($_POST['edit'])){
// this id wil be pulled from the URL above.
$hot_id = $_GET['hotl'];
$hotel_name = escape_value($_POST['title']);
$hotel_star = escape_value($_POST['category']);
$shortdes = escape_value($_POST['shortdes']);
$country = escape_value($_POST['country']);
$address = escape_value($_POST['address']);
$pcode = escape_value($_POST['pcod']);
$city = escape_value($_POST['city']);
$query = "UPDATE Hotels SET
hotel_name = '{$hotel_name}',
star ='{$hotel_star}',
description = '{$shortdes}',
country = '{$country}',
hotel_address = '{$address}',
hotel_postal_code = '{$pcode}',
hotel_city = '{$city}'
WHERE hotel_id = {$hot_id}";
$result = mysql_query($query, $connection);
if(mysql_affected_rows() == 1){
//Success
}else{
die("Some thing wrong with the Upadate: ". mysql_error());
}
}else{
//error ocurred
}
?>
我在PHP和Mysql論壇發佈我的問題,因爲我不知道問題出在哪裏。
顯示我們**生成的** SQL。 – 2012-07-19 21:09:53
是的,錯誤信息告訴你發生了什麼問題。只需修復SQL,你就很好。您可能需要參數化查詢,這會使您的問題更容易消失。但是你需要說「bye bye mysql_ * functions」(這不是那麼難),你可以在PHP手冊中看到) – hakre 2012-07-19 21:12:14
作爲馬特說你應該嘗試回顯實際的sql語句,看看它是什麼expext。你也應該看看使用mysqli或PDO而不是mysql_ *語句準備好的語句。 – 2012-07-19 21:13:28