آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

متد پست به سرور (مهم)

علی  9 سال پیش  9 سال پیش
0 0

سلام : 

من می خوام ۲تا محصول از چندین محصول رو بخونم .

من در params کردن این دوتا مشکل دارم و دوتاشو پست نمیکنه باید چکار کنم که ۲تا با هم پست بشه و ۲تا محصول خونده شه.

لطفا با کد توضیح بدید . با جیسون کردن هم نتونستم درستش کنم. 

    ContentValues params = new ContentValues();
    for (int j = 0; j < G.productIds.size(); j++) {
      JSONObject Object1 = new JSONObject();
      try {
        Object1.put("id", "" + G.productIds.get(j).ids);
      } catch (JSONException e) {
        e.printStackTrace();
      }

      idsArray.put(Object1);
    }
    params.put("id", idsArray.toString());
    Log.i("LOG", "params: " + params);  // I/LOG: params: id=[{"id":"1"},{"id":"2"}]


    String url = "http://192.168.1.1/android/final_products/shopping_bag.php?action=read";
    String  result = Webservice_ArrayList.readUrl(url, params);
    if (result != null) {
      try {
        G.shopping.clear();
        JSONArray tasks = new JSONArray(result);
        for (int i = 0; i < tasks.length(); i++) {
          JSONObject object = tasks.getJSONObject(i);
          StructShoppingBag task = new StructShoppingBag();


          task.model = object.getString("model");
          task.coverage = object.getString("coverage");
0 0
تو رو خدا یکی کمک کنه این مشکل من رو . به خدا خیلی مهمه تو شرایطی که الان دارم . :( (9 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
Noxius  9 سال پیش
0 0

اگه میخوای پست کنی از  ... "&" "=" استفاده نکن

من از Volley استفاده میکنم --

به getParams یه HashMap ارسال کن

public void connection(String webLink, final String service, final Map<String ,String> params) {
final String url = webLink+service;
final RequestQueue requestQueue = Volley.newRequestQueue(G.context);
final StringRequest stringRequest = new StringRequest(Request.Method.POST, url,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {

if (service.equals("read")) {

try {
JSONArray jsonArray = new JSONArray(response);

G.tasks.clear();
for (int i=0 ;i<jsonArray.length();i++) {
StrucTask task = new StrucTask();
JSONObject object = jsonArray.getJSONObject(i);
task.setTitle(object.getString("title"));
task.setDescription(object.getString("desc"));

task.setDone(object.getInt("done")==1 );

task.setId(object.getInt("id"));
G.tasks.add(task);

}
} catch (JSONException e) {
e.printStackTrace();
}
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {

}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {

return params;
}
};


requestQueue.add(stringRequest);
0 0
مشکل من اینه که ارسال می کنم از اون ۲ تا ایدی فقط یکی رو می خونه در اندروید . واقعا چطور یه json array پست میشه؟ (9 سال پیش)
پاسخ به سوال 
علی  9 سال پیش
0 0

ایا اینجا هم باید تغییر بدم پست رو در php ؟

    $id=$_POST['id'];
    $result = mysqli_query($connection,"SELECT * 
    FROM Products_List 
    WHERE id='$id'");

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .