台灣最大程式設計社群網站
線上人數
671
 
會員總數:244580
討論主題:188713
歡迎您免費加入會員
討論區列表 >> MySQL >> 資料內容部分消失的疑問
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
資料內容部分消失的疑問
價值 : 50 QP  點閱數:172 回應數:4

樓主

默默之音
門外漢
0 16
296 8
發送站內信

程式碼範例
$form_inputs = array();
$form_inputs[] = array("type"=>true,"name"=>"王小明","value"=>"你好");
$form_inputs_en = json_encode($form_inputs,JSON_UNESCAPED_UNICODE);

$form_inputs_en 正確資料會是 [{"type":true,"name":"王小明","value":"你好"}]
但有時候存進資料庫會只剩下 [{"type":true,"name":"王小明","value":"
後面 你好"}] 就消失了

資料欄位是text,所以沒有長度問題

請問這問題可能是甚麼原因造成呢

搜尋相關Tags的文章: [ 資料部分消失 ] ,
本篇文章發表於2019-04-01 18:23
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

彩虹
檢舉此回應
你先把 JSON_UNESCAPED_UNICODE 拿掉後再存一次看看

最後用 json_decode($jsonString, 1);
print_r 出來看看


順便提供一下你寫進資料庫的片段程式碼
本篇文章回覆於2019-04-01 19:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
推測還是可能碰到編碼的問題了。
如彩虹說的,先試試拿掉JSON_UNESCAPED_UNICODE看看可不可以正常再說。

可以在存資料庫時使用一下esc處理後再存入。
本篇文章回覆於2019-04-02 16:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

默默之音
檢舉此回應
//這邊取得使用者輸入的資料
$value = isset($_POST[$val['name']]) ? stripslashes($_POST[$val['name']]) : "";

//每次都是在value後面斷掉
$form_inputs[] = array("type"=>$val['type'],"name"=>$val['name'],"value"=>$value,"other"=>$other);

//然後就直接json_encode 存到資料庫 value部分有時候會截掉
$form_inputs_en = json_encode($form_inputs,JSON_UNESCAPED_UNICODE);
本篇文章回覆於2019-04-08 11:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
所以???

你聽不懂我們說的東西。原問題再問一次嗎??
本篇文章回覆於2019-04-09 13:21
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.