第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用java/android發(fā)送的數(shù)據(jù)在php中進(jìn)行JSON迭代

使用java/android發(fā)送的數(shù)據(jù)在php中進(jìn)行JSON迭代

PHP
慕桂英546537 2023-09-22 16:08:29
我的 PHP 服務(wù)器從我的 Android 接收以下 json :{  "class":"SURESHOT",  "subject":"Maths",  "qstn":"[607421_15958169393.JPG, 410816_15958169444.JPG,           655502_15958169495.JPG,   625421_15958179086.JPG,           625421_15958179086.JPG, 461984_15958180457.JPG]",  "ans":"[C, B, A, D, C, C]",  "lickey":"jg2ler3xvbdgsjkru12tutujghgjgl4jkjojuir8uttzcdadasretf",  "user":"1000",  "result":"[fail,fail, pass, fail, fail, fail]",  "qid":"[37, 38, 39, 40, 40, 41]" }現(xiàn)在在 PHP 中迭代數(shù)據(jù)是不可能的?!皅stn”、“ans”和“結(jié)果”是有問題的。我們怎樣才能正確地做到這一點(diǎn)呢?我用于json_encode(($_POST),true);初步數(shù)據(jù)轉(zhuǎn)換。這是我運(yùn)行來獲取 JSON 的代碼:這是我獲取 json 的代碼。   reqPostanswers = new StringRequest(Request.Method.POST, urll,new  Response.Listener<String>() {        @Override        public void onResponse(String response) {            //Log.i("posting info :",response.toString());        }    }, new Response.ErrorListener() {        @Override        public void onErrorResponse(VolleyError error) {            //Log.i("posting error  :",error.toString());        }    }){        @Override        protected Map<String,String> getParams(){            Map<String,String> params = new HashMap<String, String>();            params.put("subject",subject);            params.put("class",qSet[qsetCntr][0]);            params.put("user", thisuser);            params.put("result",resltn.toString());            params.put("qstn",qstnn.toString());            params.put("qid", qiddn.toString());            params.put("ans",answn.toString());            params.put("lickey","jg2ler3xvbdgsjkru12tutujghgjgl4jkjojuir8uttzcdadasretf");            return params;        }    };    answerpostQueue = Volley.newRequestQueue(getApplicationContext());    answerpostQueue.add(reqPostanswers);pram 中設(shè)置的數(shù)組或變量僅是 Arraylists。
查看完整描述

3 回答

?
慕蓋茨4494581

TA貢獻(xiàn)1850條經(jīng)驗(yàn) 獲得超11個贊

Android 代碼實(shí)際上并未將 JSON 發(fā)送到服務(wù)器。它使用舊的鍵值表單字段格式,無法表示復(fù)雜的對象。要解決此問題,請將 Android 代碼更改為使用,JsonObjectRequest而不是StringRequest,并將請求作為 傳遞JSONObject:


JSONObject params = new JSONObject();

params.put("subject",subject);

params.put("class",qSet[qsetCntr][0]);

params.put("user", thisuser);

params.put("result", new JSONArray(resltn));

params.put("qstn", new JSONArray(qstnn));

params.put("qid", new JSONArray(qiddn));

params.put("ans", new JSONArray(answn));

params.put("lickey","jg2ler3xvbdgsjkru12tutujghgjgl4jkjojuir8uttzcdadasretf");


reqPostanswers = new JsonObjectRequest(Request.Method.POST, urll, params,

? ? new? Response.Listener<String>() { ... },

? ? new Response.ErrorListener() { ... }

});

完成此更改后,您很可能還必須更改 PHP 代碼,以便它從請求正文中讀取 JSON。

查看完整回答
反對 回復(fù) 2023-09-22
?
人到中年有點(diǎn)甜

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超7個贊

首先問題出在你創(chuàng)建的json上。Json 數(shù)組應(yīng)如下所示,


"qstn": ["607421_15958169393.JPG","410816_15958169444.JPG",

      "655502_15958169495.JPG","625421_15958179086.JPG","625421_15958179086.JPG", 

"461984_15958180457.JPG"]

按照上面所示的方式轉(zhuǎn)換你的 json 數(shù)組并在 php 端使用,


$model = json_decode($json,true);

現(xiàn)在您可以訪問該變量的值,如下所示:


 $class = $model["class"];

 //The 0th index of qstn array can be accessed as

 $qsnt1 = $model["qstn"][0];

為了避免將來出現(xiàn)此類錯誤,請使用gson為您創(chuàng)建 json。


查看完整回答
反對 回復(fù) 2023-09-22
?
不負(fù)相思意

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超10個贊

使用ltrim和函數(shù)從字符串中rtrim刪除 和[,然后使用explode可以將字符串轉(zhuǎn)換為數(shù)組。]注意:此示例僅在分隔符為,空格 ( ", ")時有效


例如"qstn":


$array = json_decode($json, true);


$resultArray = explode(", ",rtrim(ltrim($array["qstn"],"["),"]"));


var_dump($resultArray);


查看完整回答
反對 回復(fù) 2023-09-22
  • 3 回答
  • 0 關(guān)注
  • 166 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號