2012-12-04 82 views
0

爲什麼,我不能更新字段(類型:LONGTEXT)與包含逗號(,)的字符串...的mysql_query不會更新如果字符串值包含逗號(,)

$result=mysql_query("UPDATE table_name SET column1=$a WHERE column2=$b AND column3='price'"); 

$a="10"; or $a="10.99"; 
$b="15"; 

工作以及不

$a="10,99"; 
$b="15"; 

工作既不工作:

$a="10,99"; 
$a=mysql_real_escape_string($a); 

我在做什麼錯在這裏?

回答

2

當你的查詢字符串正在與包含逗號價值評估,這是查詢: "UPDATE table_name SET column1=10,19 WHERE column2=15 AND column3='price'"; 逗號正在創建一個問題,因爲值10,19是不是字符串。你需要在你的變量中加引號。如果您使用雙引號,則需要轉義引號。單引號也適用;以下任一應該做的伎倆:

$result=mysql_query("UPDATE table_name SET column1=\"$a\" WHERE column2=\"$b\" AND column3='price'"); 

$result=mysql_query("UPDATE table_name SET column1='$a' WHERE column2='$b' AND column3='price'"); 
+0

+1正常工作!萬分感謝! – Franc

+0

不客氣。請記住接受答案! – imkingdavid

0

變化(你需要用與'場的字符串或文本類型)

$result=mysql_query("UPDATE table_name SET column1=$a WHERE column2=$b AND column3='price'"); 

$result=mysql_query("UPDATE table_name SET column1='$a' WHERE column2='$b' AND column3='price'"); 
相關問題