0
大家好我有以下查詢從phpmyadmin執行給我沒有問題,但使用mysqli擴展時是一個噩夢,但只在一個函數變量。msqli查詢 - mysqli_sql_exception語法錯誤
$reference_field = 'attribute';
$value = $attribute; // it actual worths 'Size,S Small ,M Medium ,L Large ,XXL 2Xl XX-Large ,XXXL 3Xl XXX-Large ';
$original_value = md5($value);
$SQL = " UPDATE jos_jf_content As j SET j.value = '%s' ,
j.original_value = '%s' WHERE j.reference_id =%d
AND j.reference_field ='%s' ";
echo $a=sprintf($SQL,$value,$original_value, $prodId,'attribute');
$Myconnector->real_query($a );
它給我
mysqli_sql_exception: You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version
for the right syntax to use near " at line 3
在做查詢的打印似乎一切OK和調試工作正常,在一個單一的PHP文件單獨執行它,使我這個麻煩只是一個功能
內部時UPDATE jos_jf_content As j
SET j.value = 'Size,S Small ,M Medium ,L Large ,XXL 2Xl XX-Large ' ,
j.original_value = 'f8508eb38ed3e26e6f3814a253b12c9a' , j.modified = 1331632841
WHERE j.reference_id =1787 AND j.reference_field ='attribute'
我沒有看到結果查詢的任何雙引號。你有機會輸出*另一個*查詢 – zerkms 2012-03-13 10:05:40
裏面有什麼功能?函數對查詢做了什麼?你能告訴我們嗎? – 2012-03-13 10:06:36
我不敢相信你展示的PHP代碼會生成這個查詢。 '1331632841'不是八進制數,'1787'不是二進制數。另外,爲什麼使用mysqli並避免準備好的語句? – 2012-03-13 10:12:43