2016-09-21 54 views
-2

我想在android中使用Volley插入包含一些字符串和一些整數的ArrayListMySQL。這是我想要在android中發送我的數組。 我不知道這是否正確。如何使用Volley將ArrayList插入到mysql

@Override 
public Map<String, String> getHeaders() throws AuthFailureError { 
    Map<String, String> params = new HashMap<String, String>(); 
    params.put("Authorization", user.getApikey()); 
    return params; 
} 

@Override 
protected Map<String, String> getParams() throws AuthFailureError { 
    Map<String,String> params = new HashMap<>(); 
    for(int i=0; i<wordlist.size();i++){ 
     params.put("word_id["+i+"]",String.valueOf(wordlist.get(i).getWord_id())); 
     params.put("word["+i+"]",wordlist.get(i).getWord()); 
     params.put("translation["+i+"]",wordlist.get(i).getTranslation()); 
     params.put("english["+i+"]",wordlist.get(i).getEnglish()); 

    } 
    return params; 
} 

的問題是我不知道如何讓PHPArrayList用POST數據以及如何使用它來我的數據插入到MySQL。 如果有人告訴我如何用示例處理PHP部分,並且即使我在android部分中做對了,我也會很感激。

+0

發佈你試過的東西,特別是在你卡住的地方 –

+0

正如我所說我找不到任何東西在PHP部分嘗試,所以我沒有嘗試任何東西。任何方式爲您的負 –

+0

_i無法找到任何東西在PHP part_。你需要學會使用谷歌! –

回答

1
@Override 
public Map<String, String> getHeaders() throws AuthFailureError { 
Map<String, String> params = new HashMap<String, String>(); 
params.put("Authorization", user.getApikey()); 
return params; 
} 

@Override 
protected Map<String, String> getParams() throws AuthFailureError { 
Map<String,String> params = new HashMap<>(); 
params.put("list",wordlist); 
return params; 
} 

然後在你的PHP端

$list = $_POST["list"]; 
for($i=0;$i<count($list);$i++){ 
//do something 
} 

EDITED

public void sendSomeToSql(){ 
    final JSONObject data = new JSONObject(); 
    JSONArray array = new JSONArray(); 
    JSONObject ok = new JSONObject(); 
    for (int i = 0; i < wordlist.size(); i++) { 
     ok.accumulate("list", wordlist.get(i)); 
    } 
    array.put(ok); 
    try { 
     data.accumulate("list", array); 
    } catch (JSONException e) { 
     e.printStackTrace(); 
    } 
    StringRequest request = new StringRequest(Request.Method.POST, "url", new Response.Listener<String>() { 
     @Override 
     public void onResponse(String response) { 

     } 
    }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 

     } 
    }){ 
     @Override 
     public Map<String, String> getHeaders() throws AuthFailureError { 
      Map<String, String> params = new HashMap<String, String>(); 
      params.put("Authorization", user.getApikey()); 
      return params; 
     } 

     @Override 
     protected Map<String, String> getParams() throws AuthFailureError { 
      Map<String,String> params = new HashMap<>(); 
      params.put("list", String.valueOf(data)); 
      return params; 
     } 
    }; 
} 

試試這個,希望它的作品。早些時候,我只是想解決PHP方面如何接受來自android的數據。

+0

ty親愛的,它給了我關鍵r:| sry如果我不能給你一個postitive給你cuse im低於15的聲譽 –

+0

沒問題,它的思想計數:) – Meowok

+0

我檢查了:s你不能把數組作爲參數 –

相關問題