簡體   English   中英

PHP腳本不更新MySQL行

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM