Ajax 板


LINE

推文很難講清楚,開一篇好了 ※ 引述《liar2 (liar)》之銘言: : 如題 : 做的東西有需要用javascript把編好的json : 傳到php中作處理存入mysql : php傳到javascript我會 : 可是相反過來操作 我就不會了 : 這裡附上我的程式碼 不知道為什麼 在js端編出來的是正確的json : 可是到了php decode後卻不是正確的json : 拜託各位了 : js端: : 其中member比較特別 是個陣列 : $('input:checkbox:checked[name="mem"]').each(function(i) : { new_members[i] = this.value;}); : 其他都是一般變數 : var obj = {"title":new_title, : "time":new_time, : "content":new_content, : "member":new_members}; : var json_obj = JSON.stringify(obj); : alert(json_obj); : $.ajax({ : url:"receive_meeting_set.php", : type:"POST", : data:{"jdata":json_obj}, 這裡就直接data: obj就好啦 PHP的$_POST就會有 $_POST['title'], $_POST['time'], $_POST['content'], $_POST['member'], : dataType:"text", : success:function(Jdata){ : alert("tt"); : alert(Jdata);}, : error:function(){alert("伺服器發生錯誤");} : }); : php端: : <?php : if($_POST['jdata']!=null) : { : $data= json_decode($_POST['jdata']); : echo $data." ".$_POST['jdata']; : } : ?> : 其中js我用alert(json_obj);會秀出 : {"title":"123","time":"00:00","content":"123","member":["b","i","q"]} : 應該是很正常的json沒錯 : 可是到php 我用echo $data." ".$_POST['jdata']; : 會發現$data沒有東西 而$POST_['jdata']卻是這個 : {\"title\":\"123\",\"time\":\"00:00\",\"content\":\"123\" : ,\"member\":[\"b\",\"i\",\"q\"]} : 找了好久找不到解決的方法 : 新手不是很懂json array的操作 : 希望大家可以幫忙~ 文章這麼長 看完的人謝謝摟~ php經由設定會讓$_POST有個很雞婆的功能,就是會自動加slashes, 然後會讓你的json_decode爆炸。 這個功能有好有壞啦,他可以幫你濾掉基本的sql injection攻擊。 要移除方法有3: 1. 從php.ini把magic_quotes_gpc關掉 2. 改接收raw post 3. 改用filter_input 補充4. php 5.4就不會自動加slashes -- ˋ ˋ φhacoolman 養一隻邊境牧羊犬, / \ 養嘛養嘛養嘛 就能常常換新手機喔! / \ 嘛養嘛養嘛 │ │ 嘛養嘛養嘛 好邊境不養嗎好邊境不\ │ (●ω●) 好邊境不養嗎好邊境不養嗎 \ ︶︶ / 嘿~嘿~嘿~ --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.254.114.198
1F:推 liar2:想問大大一個小問題 我js傳member過去是一個array 08/25 14:56
2F:→ liar2:那傳到php之後 就一樣是個php的array嘛? 08/25 14:56
3F:→ liar2:還有 我要怎麼取得php array中的所有元素 不好意思 08/25 14:57
4F:→ liar2:問題很多 對web接觸剛起步 0.0 08/25 14:58
會是個array, 但你的寫法會有個問題, $.each會是非同步的處理,很有可能你的member會是個空array ※ 編輯: UniFish 來自: 111.254.114.198 (08/25 15:27)
5F:推 liar2:那不用each的話 有沒有其他可能的寫法 08/25 16:54
6F:→ liar2:我剛剛成功傳過去之後 發現array都只有存到最後一個值 08/25 16:55
sorry, 誤看了code 更正一下,data: obj 這樣傳去PHP後$_POST就如同我講的那樣子 jQuery 1.5後可以使用deffer, 用$.promise()串接吧 ※ 編輯: UniFish 來自: 111.254.114.198 (08/25 18:37)







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP