registro android / php no insertado en mysql

Tengo un problema al insertar mis registros en la tabla mysql. Solo se está insertando el último registro.

Este es el código en el que estoy trabajando:

Androide

String[] arrDocumentNumber, arrTransactionDate, arrItemCode; arrDocumentNumber = dbHelper.getAllDocumentNumbersFromOUTTRANS(); arrTransactionDate = dbHelper.getAllTransactionDatesFromOUTTRANS(); arrItemCode = dbHelper.getAllItemCodesFromOUTTRANS(); protected String doInBackground(String... args) { // Building Parameters List params = new ArrayList(); for(int i = 0; i < arrDocumentNumber.length; i++){ params.add(new BasicNameValuePair(TAG_DOCUMENTNUMBER, arrDocumentNumber[i] )); params.add(new BasicNameValuePair(TAG_TRANSACTIONDATE, arrTransactionDate[i] )); params.add(new BasicNameValuePair(TAG_ITEMCODE, arrItemCode[i] )); } // getting JSON Object // Note that insert outtrans url accepts POST method JSONObject json = jsonParser.makeHttpRequest(url_insertTo_outtrans, "POST", params); //obj.put(params); //Log.d("JSON", obj.toString()); // check log cat from response Log.d("Create Response", json.toString()); } 

PHP

  prepare("INSERT INTO outtrans(documentnumber, transactiondate, itemcode) VALUES (:documentnumber, :transactiondate, :itemcode)"); $result->bindParam(':documentnumber', $documentnumber); $result->bindParam(':transactiondate', $transactiondate); $result->bindParam(':itemcode', $itemcode); $result->execute(); // check if row inserted or not if ($result) { // successfully inserted into database $response["success"] = 1; $response["message"] = "New record successfully created."; // echoing JSON response echo json_encode($response); } else { // failed to insert row $response["success"] = 0; $response["message"] = "Oops! An error occurred."; // echoing JSON response echo json_encode($response); } } else { // required field is missing $response["success"] = 0; $response["message"] = "Required field(s) is missing"; // echoing JSON response echo json_encode($response); } ?> 

Solo los últimos registros se insertan en la tabla mysql. No sé mucho sobre PHP así que podría estar perdiendo algo en mi código PHP. Su ayuda será muy apreciada por mí. Gracias.

Esto se debe a que solo está haciendo HttpRequest con el último parámetro. (es decir) Una vez finalizado su bucle for, los params contendrán solo el último registro. Así que muévete

 JSONObject json=jsonParser.makeHttpRequest(url_insertTo_outtrans,"POST",params); 

en el bucle for.

 for(int i = 0; i < arrDocumentNumber.length; i++) { List params = new ArrayList(); params.add(new BasicNameValuePair(TAG_DOCUMENTNUMBER, arrDocumentNumber[i] )); params.add(new BasicNameValuePair(TAG_TRANSACTIONDATE, arrTransactionDate[i] )); params.add(new BasicNameValuePair(TAG_ITEMCODE, arrItemCode[i] )); JSONObject json=jsonParser.makeHttpRequest(url_insertTo_outtrans,"POST",params); }