簡體   English   中英

更新查詢在MySQL和PHP中不起作用

[英]Update query in MySQL and PHP not working

PHP通常可以直接使用,但是我無法使該查詢正常工作。 我正在嘗試更新一個簡單的記錄。 我的代碼如下。

<?php

 $customername=mysql_real_escape_string($_POST['customername']); 
 $contact=mysql_real_escape_string($_POST['contact']); 
 $customerorder=mysql_real_escape_string($_POST['customerorder']); 
 $orderplaced=mysql_real_escape_string($_POST['orderplaced']); 
 $staffmember=mysql_real_escape_string($_POST['staffmember']); 
 $daterequired=mysql_real_escape_string($_POST['daterequired']); 
 $status=mysql_real_escape_string($_POST['status']); 
 $paid=mysql_real_escape_string($_POST['paid']); 
 $delivery=mysql_real_escape_string($_POST['delivery']); 
 $ordercontent=mysql_real_escape_string($_POST['ordercontent']); 
 $orderid=mysql_real_escape_string($_GET['orderid']); 

mysql_connect("localhost", "xxxx", "xxxxxxx") or die("Connection Failed");
mysql_select_db("xxxxxx")or die("Connection Failed");


$query = "UPDATE ordermanager_orders SET customername='$customername', contact='$contact',  ordernumber='$customerorder', placedby='$orderplaced', requiredby='$daterequired', status=$status', staffmember='$staffmember', paid='paid', delivery='$delivery', ordercontent='$ordercontent' WHERE order='$orderid'";

if(mysql_query($query)){
 echo "updated";}
 else{
 echo "fail";}

?> 

這些值正在從另一個頁面發布或“獲取”。 它們肯定會通過,否則會出現錯誤。 目前,它只是根據代碼提出“失敗”。

我嘗試了多種在Internet上找到的代碼變體,以檢查我的編碼是否正確,但是仍然無法正常工作。

我想知道您是否嘗試過print_r您的$ query進行檢查。

1號 將您的連接字符串移到最頂部。

2號 status=$status' << ===減去1個引號

我以為您必須先連接到數據庫,然后才能使用mysql_real_escape_string() 嘗試在所有其他代碼上方進行連接。

查詢的狀態部分也缺少引號。

您的錯誤是因為未正確處理status更新: status=$status'必須為status='$status'

如果將mysql_error()放在“ fail”部分中,您將發現這一點。

嘗試通過添加逗號進行更改

status=$status'status='$status'

為了確保傳遞正確的值,FYI將paid='paid'更改為paid='$paid'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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