2016-07-28 48 views
2

我遇到了一些问题,我在google和stackoverflow上搜索过,但找不到任何可以解答我的问题的东西。如何使用Volley Android Studio将数组插入到MySQL

我的情况是,我不能保存数组列表到我的数据库。

I have Multiple selection, and a put it to RecycleView like this 我从Recyleview的地位和价值,然后放入一个数组,接下来我把他们每个人到一个HashMap,保存全成,但所有的数据都保存有重复的值(同一与数组的长度)

This is data from my DB, is duplicated saved, but i have select two different item

StringRequest postRequest = new StringRequest(Request.Method.POST, url, 
      new Response.Listener<String>() { 
       @Override 
       public void onResponse(String response) { 
        try { 
         JSONObject jPesan = new JSONObject(response); 
         boolean pesan = jPesan.names().get(1).equals("success"); 
         if (pesan == true){ 
          PD.dismiss(); 
          Toast.makeText(getApplicationContext(), 
            "Data Personil Terlibat Berhasil di Simpan", 
            Toast.LENGTH_SHORT).show(); 
         }else if(pesan == false){ 
          Toast.makeText(getApplicationContext(), 
            "Terjadi Kesalahan", 
            Toast.LENGTH_SHORT).show(); 
         } 

        } catch (JSONException e) { 
         e.printStackTrace(); 
        } 
       } 
      }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 
      PD.dismiss(); 
      Toast.makeText(getApplicationContext(), 
        "Terjadi Kesalahan Jaringan", Toast.LENGTH_SHORT).show(); 
     } 
    }) { 
     @Override 
     protected Map<String, String> getParams() { 

      // HERE I PUT ARRAY TO HASMAP 

      Map<String, String> params = new HashMap<String, String>(); 
      for (int i = 0; i < arrPers.length; i++){ 
       params.put("nrp", arrPers[i]); 
       params.put("id-jadwal", idJadwal); 
      } 

      return params; 


     } 
    }; 

    // Adding request to request queue 
    MyApplication.getInstance().addToReqQueue(postRequest); 

} 

回答

0

可以通过指定的键发送阵列:

Map<String, String> params = new HashMap<String, String>(); 
for (int i = 0; i < arrPers.length; i++){ 
    params.put("nrp["+i+"]", arrPers[i]);//specify the key of the array you post 
    params.put("id-jadwal", idJadwal); 
} 

在你的PHP你应该有这样的东西:

var_dump($_POST['nrp']);// array('1110112','1110113'....); 

foreach($_POST['nrp'] as $option) { //just as an example 
    //insert each element in db ($option and user id) 
} 
+0

谢谢老兄:)它的工作 – Ard