將json字符串存儲在mysql表中存在小問題。 字符串例如:如何在mysql表中存儲json字符串
'{"variable":"content here with \" addsleshes "}'
用json_encode創建。 使用簡單的mysqli_query函數將此字符串存儲在數據庫中。
mysqli_query('insert into ... values \'{"variable":"content here with \" addsleshes "}\' ');
在此之後:
mysqli_query('select *..');
mysqli_fetch_array($res);
當我從MySQL得到這個領域,並嘗試之前,「不能使用和addslashes功能使用PHP的json_decode它會返回NULL,因爲我不再有斜線。它還會添加斜線如\「變量\」 不知道如何解決這個問題
你將不得不展示你如何存儲這個字符串,以及如何檢索它。正確完成的系統不會剝離文本中的斜槓。 –
更新了問題。即時通訊使用現在進行測試只是mysqli_query funciton的情況下,我的數據庫類正在改變的東西,但仍然是同樣的問題 – abiku
好吧,是的,你沒有正確逃脫該字符串。如果你有,json_encode添加的反斜槓將會進入數據庫。換句話說,你正在遭受[sql注入攻擊](http://bobby-tables.com)漏洞,而這個字符串「腐敗」是它的一個症狀。 –