如何从凌空请求发送arraylist数据并获取php [英] How can send arraylist data from volley request and get in php
本文介绍了如何从凌空请求发送arraylist数据并获取php的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从凌空requset向php发送字符串数据的ID和数组列表.但是我不确定如何正确发送到服务器以及如何在php中获取它. 这是向服务器发送请求的android端:
I want to send a ID and array list of string data to php from volley requset . but i'm not sure how can send correctly to server and how can get it in php . Here is android side to send request to server:
private void sendMessage() {
StringRequest stringRequest = new StringRequest(Request.Method.POST, Config.NOTIF_URL,
new Response.Listener < String > () {
@Override
public void onResponse(String response) {
Log.d("Response --->", response);
jsonNotif = new ParseJSON(response);
jsonNotif.parseJSON();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(context, error.getMessage(), Toast.LENGTH_LONG).show();
}
}) {
@Override
protected Map < String, String > getParams() throws AuthFailureError {
Map < String, String > params = new HashMap < > ();
//Adding parameters to request
ArrayList < String > courseList = new ArrayList < String > (checkedSet);
String ID = prefProfID.getString(Config.PROFID_SHARED_PREF, "0");
Log.d("ID prof list >>", ID);
params.put(Config.PROFID_SHARED_PREF, ID);
for (int i = 0; i < courseList.size(); i++) {
params.put("courselist", courseList.get(i));
}
//returning parameter
return params;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(context);
requestQueue.add(stringRequest);
}
这是我的php代码:
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
//Getting values
$courseList = $_POST['courseList'];
$professor_ID = $_POST['Prof_ID'];
require_once('dbConnect.php');
$newcourseList = implode(", ", $courseList);
$sql = "select Stud_ID,student.f_Name,student.l_Name from student,course where course.S_ID = student.Stud_ID and course.P_ID in ($newcourseList)";
$res = mysqli_query($con, $sql);
$result = array();
while ($row = mysqli_fetch_array($res)) {
array_push($result, array(
'id' => $row[0],
'fname' => $row[1],
'lname' => $row[2],
'tag' => 'studlist'
));
}
echo json_encode(array(
"result" => $result
));
mysqli_close($con);
}
?>
推荐答案
如果要发送ArrayList数据,我认为将其转换为JSONArray来发送它会更好
If you want to send ArrayList data, I think its better to send it by Converting it into JSONArray
这篇关于如何从凌空请求发送arraylist数据并获取php的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文