En mi caso, y para simplificar, tengo un botón de "Submit" que envía la fecha y un valor (que siempre es el mismo: 100). Cundo lo ejecuto, me da el siguiente error de RunTime:
08-02 08:15:45.918 7415-7812/com.example.alberto.albertapp W/System.err﹕ org.json.JSONException: End of input at character 0 of 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at org.json.JSONTokener.syntaxError(JSONTokener.java:450) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at org.json.JSONTokener.nextValue(JSONTokener.java:97) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at org.json.JSONObject.<init>(JSONObject.java:156) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at org.json.JSONObject.<init>(JSONObject.java:173) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at com.example.alberto.albertapp.MainActivity$AddNewRecord.doInBackground(MainActivity.java:119) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at com.example.alberto.albertapp.MainActivity$AddNewRecord.doInBackground(MainActivity.java:91) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at android.os.AsyncTask$2.call(AsyncTask.java:288) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at java.util.concurrent.FutureTask.run(FutureTask.java:237) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 08-02 08:15:45.919 7415-7812/com.example.alberto.albertapp W/System.err﹕ at java.lang.Thread.run(Thread.java:818)
¿Alguna idea de qué hago mal?
Gracias!
malainfluencia
MegaAdicto!!!
788 mensajes desde feb 2010
Editado 1 vez. Última: 2/08/2015 - 14:54:00 por malainfluencia.
public void envia(View v) { // Create a new HttpClient and Post Header HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("http://x.y.z.a/android1/new_record.php"); TextView tv = (TextView) findViewById(R.id.logbox); // tv.setText(String.valueOf(cambios)); strLog="Dentro de función..."; tv.setText(strLog);
try { // Add your data List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2); nameValuePairs.add(new BasicNameValuePair("fecha", "2015-08-02 02:09:12")); nameValuePairs.add(new BasicNameValuePair("valor", "1")); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request HttpResponse response = httpclient.execute(httppost);
Waninkoko escribió:¿Estás realizando la conexión desde un hilo? Aunque creo que si no fuese el caso daría una excepción diferente.
Aprovecho para comentar que modificar la interfaz desde un hilo es muy mala idea, y en algunos casos puede cascar la app
Hola Waninkoko. Me he perdido, pero ahora creo que el problema está en cómo el program contacta con el PHP. Desde una web con un formulario simple, me inserta los valores. Y desde la maldita aplicación no lo hace, ni salta error.
El código es tan simple como:
HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("new_record.php"); // Add your data List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); nameValuePairs.add(new BasicNameValuePair("fecha", "2015-08-02 02:09:12")); nameValuePairs.add(new BasicNameValuePair("valor", "2001")); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
Waninkoko escribió:¿Estás realizando la conexión desde un hilo? Aunque creo que si no fuese el caso daría una excepción diferente.
Aprovecho para comentar que modificar la interfaz desde un hilo es muy mala idea, y en algunos casos puede cascar la app
Hola Waninkoko. Me he perdido, pero ahora creo que el problema está en cómo el program contacta con el PHP. Desde una web con un formulario simple, me inserta los valores. Y desde la maldita aplicación no lo hace, ni salta error.
El código es tan simple como:
HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("new_record.php"); // Add your data List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); nameValuePairs.add(new BasicNameValuePair("fecha", "2015-08-02 02:09:12")); nameValuePairs.add(new BasicNameValuePair("valor", "2001")); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));