2014-05-07 52 views
1

這個查詢有什麼問題嗎?PHP MySQL插入到查詢不起作用

sql = "INSERT INTO creditpurchasehistory (usercode, dollar_amount, payment_id, description, age, request_id, currency, time, currency_amount, quantity) VALUES (code360, 6.97, 4565425552154, Buy_Credits_For_Access, 347162, 7bd92f9489acbff04f80484d94c63282_9354, USD, 1376952971, 12.5, 1)" 

這是查詢的回顯版本。原來的SQL語句是

mysqli_query($con,"INSERT INTO creditpurchasehistory (" . $Fieldnames . ") VALUES (" . $Fieldvalues . ")"); 

$Fieldnames是含有由逗號分隔的和$Fieldvalues爲的值的字段名稱的變量。我確保表中存在字段名稱。問題是它沒有將記錄插入表中,表格仍然是空的。沒有任何錯誤或任何事情,它只是完成處理,但沒有記錄添加到表中。

+6

您需要在某些VALUES中使用引號。 –

+0

將錯誤報告添加到文件頂部 'error_reporting(E_ALL); ini_set('display_errors',1); mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);'在生產中時,如果你還沒有這樣做。 –

+0

感謝弗雷德,所以引用文本值,它應該罰款? – user3613603

回答

1

(要關閉的問題,並標記爲已解決)

你需要在你的一些VALUES的使用引號。

你目前有的一些值是明文,所以把它們用引號括起來。

在生產模式下添加錯誤報告到您的文件的頂部,這將有極大的幫助。

error_reporting(E_ALL); 
ini_set('display_errors', 1); 

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);