[英]php script not updating mysql row
我正在嘗試更新數據庫中的一行,但是它沒有運行。
以下是我擁有的當前腳本,該腳本從ajax調用獲取值。 我已經檢查了電話,它正在發送正確的信息。 知道我確實在腳本頂部具有連接值,但此處未包括它們。
// Opens a connection to a MySQL server
$connection = mysql_connect($host, $username, $password);
if (!$connection) {
die("Not connected : " . mysql_error());
} // Set the active MySQL database
$db_selected = mysql_select_db($database, $connection);
if (!$db_selected) {
die("Can\'t use db : " . mysql_error());
}
// Store INFORMATION
$name = $_POST['name'];
$website = $_POST['website'];
$address = $_POST['address'];
$request_url = $base_url . "&q=" . urlencode($address);
$csv = file_get_contents($request_url) or die("url not loading");
$csvSplit = split(",", $csv);
$status = $csvSplit[0];
$lat = $csvSplit[2];
$lng = $csvSplit[3];
$state = $_POST['state'];
$ident = $_POST['ident'];
$query = "UPDATE markers SET name = '".$name."', website = '".$website."',address = '".$address."',lat = '".$lat."',lng = '".$lng."',state = '".$state."'WHERE id = '" . $ident . "'";
mysql_query($query) or die(mysql_error());
?>
我對此仍然很陌生,有人可以解釋為什么它不起作用嗎?
您應該在該引號中添加字段名稱,例如名稱,網站等:`並且您應該僅在單詞之間使用一個空格,並且可能在WHERE之前添加一個空格。
您需要在“ where”之前添加空間
如果您的id
字段是數字,則不應在此處引用要比較的值:
WHERE id = '" . $ident . "'";
只要這樣做:
WHERE id = " . $ident;
一個經常被忽略的測試,使您的腳本回顯正在運行的實際查詢,然后獲取該查詢字符串並直接在數據庫服務器上運行它(在您的情況下,在MySQL服務器上的phpMyAdmin中)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.