[英]Escape single quote mysql query in php
我有以下查詢:
$query = 'UPDATE #__k2_items
SET extra_fields=\''.$campos_extra_updated.'\'
WHERE id='.$item_id;
$campos_extra_updated
包含以下值,在嘗試轉義引號之前,我可以使用其他查詢檢索該值:
UPDATE ikyfb_k2_items SET extra_fields = "[{"id":"2","value":"Ser mayor de edad"},
{"id":"3","value":"asdf"},{"id":"4","value":9999998},{"id":"5","value":"10"},
{"id":"6","value":"7"},{"id":"7","value":"3"},{"id":"8","value":"1"},
{"id":"9","value":"2014-05-28"},{"id":"10","value":"2014-05-30"},
{"id":"11","value":"2014-05-28"},{"id":"12","value":"2014-05-31"},{"id":"14","value":"25"},{"id":"15","value":"20"},{"id":"16","value":"Consigue descuento ahora!"},
{"id":"17","value":"123abc"}]" WHERE id=52
在SET extra_fields =
並在{"id":"17","value":"123abc"}]
的末尾,雙撇號應為單引號,以便查詢正常工作。
我究竟做錯了什么? 我也嘗試過使用mysql_real_escape_string
,它似乎不起作用。
我設法解決以下問題:
$query = 'UPDATE #__k2_items
SET extra_fields=\''.mysql_real_escape_string($campos_extra_updated).'\'
WHERE id='.$item_id;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.