volley 调用php接口,从Android发送数组并使用Volley在PhP服务器上...

嗨,我想将字符串值数组发送到PhP服务器并进行PhP解码并将其存储在PhP变量中

这是我在android studio上的代码

private void getEventDetailRespond(RequestQueue requestQueue) {

JSONObject params = new JSONObject();

try {

for (int i=0; i

params.put(Config.EVENT_ID, eventIDBeacon.get(i));

}

} catch (JSONException e) {

e.printStackTrace();

}

//Creating a JSONObject request

JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST,Config.DATA_URL,params.toString(),

new Response.Listener() {

@Override

public void onResponse(JSONObject respond) {

try {

Toast.makeText(Beacon_MainActivity.this,"eventDetail respond "+respond.toString(),Toast.LENGTH_LONG).show();

eventArray = new JSONArray();

eventDetail = new ArrayList<>();

eventArray = respond.getJSONArray("result");

eventDetail = getEventDetail(eventArray);

} catch (JSONException e) {

e.printStackTrace();

}

}

},

new Response.ErrorListener() {

@Override

public void onErrorResponse(VolleyError error) {

Toast.makeText(Beacon_MainActivity.this, "Unable to fetch data event Detail: " +error.getMessage(),Toast.LENGTH_LONG).show();

}

}

);

//Adding request to the queue

requestQueue.add(jsonObjectRequest);

}

private ArrayList getEventDetail(JSONArray j) {

ArrayList event = new ArrayList();

//Traversing through all the items in the json array

for (int i = 0; i < j.length(); i++) {

try {

//Getting json object

JSONObject json = j.getJSONObject(i);

//Adding the name of the event to array list

event.add(json.getString(Config.EVENT_TITLE));

} catch (JSONException e) {

e.printStackTrace();

}

}

if (event.isEmpty()) eventView.setVisibility(View.INVISIBLE);

else {

if (beacons.size()!=0) {

checkIn.setVisibility(View.VISIBLE);

eventView.setVisibility(View.VISIBLE);

spinner.setAdapter(new ArrayAdapter(Beacon_MainActivity.this, android.R.layout.simple_spinner_dropdown_item, event));

}else {

checkIn.setVisibility(View.INVISIBLE);

eventView.setVisibility(View.INVISIBLE);

}

}

return event;

}

为了从PhP大小中接收,这是我的代码

if($_SERVER['REQUEST_METHOD']=='POST'){

// decoding the json array

$post = json_decode(file_get_contents("php://input"), true);

$eventID = $post['EventID'];

require_once('dbconnect.php');

$sql = "SELECT EventID, EventTitle, EventDesc, EventTime FROM Event WHERE EVENTID = '$eventID'";

$res = mysqli_query($con,$sql);

$result = array();

while ($row = mysqli_fetch_array($res)){

array_push($result,array(

'EventID'=>$row['EventID'],

'EventTitle'=>$row['EventTitle'],

'EventDesc'=>$row['EventDesc'],

'EventTime'=>$row['EventTime']

));

}

header('Content-Type: application/json');

echo json_encode(array('result'=>$result), 256);

mysqli_close($con);

}

似乎无法正常工作,因为我无法发送和数组到PhP服务器并在PhP服务器上对其进行解码.任何帮助都非常感谢.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值