Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 04/06/13, 11:23:40
Array

[xs_avatar]
vzk91 vzk91 no está en línea
Miembro del foro
 
Fecha de registro: nov 2012
Mensajes: 199
Modelo de smartphone: OnePlus 6T
Tu operador: Movistar
Convertir array PHP en JSON y parsear desde Java

Hola,

Vereis tengo un problema a la hora de parsear desde java los json que recibo. Cuando el array obtenido es de 1 solo elemento, no tengo problemas y funciona correctamente, pero cuando el array es de varios elementos java devuelve error diciendo que no lo puede parsear.

Voy por partes a ver si lograis ver el fallo donde yo llevo atascado varios dias.

Despues de hacer una consulta desde php a una BD mysql, la cual si que devuelve valores los almaceno en un array:

[php]$i = 0;

while ($resultados = mysql_fetch_assoc($query)) {

$resultado = $resultados["nombre"];

$JSONname = "nombre" . $i;

$varArray[$JSONname] = $resultado;

$i++;

}[/php]Despues lo paso a JSON de la siguiente manera:

[php]echo json_encode($varArray);[/php]Cuando lo visualizo via web el resultado es:

 Cita:
{"nombre0":"Juan","nombre1":"Antonio","nombre2":"P epe","nombre3":"Jesus","nombre4":"Carlos"}
Y ya en Java me da error de parseo en la siguiente linea:

Código:
JSONArray jdata = post.getserverdata(postparameters2send, URL_connect);
postparameters2send contiene el unico parametro que se envia por POST ( el parametro es correcto )
URL_connect: contiene la URL del archivo PHP que recibira el POST (tambien correcto)

post es el servicio que se encarga de gestionar las conexiones con el servidor web, funciona correctamente tambien.


Alguien sabe que es lo que ocurre, que es lo que estoy haciendo mal ??

un saludo
Responder Con Cita


  #2  
Viejo 04/06/13, 23:03:04
Array

[xs_avatar]
vzk91 vzk91 no está en línea
Miembro del foro
 
Fecha de registro: nov 2012
Mensajes: 199
Modelo de smartphone: OnePlus 6T
Tu operador: Movistar
Tras seguir probando cosas yo solo he llegado a la respuesta, el array se debe crear de esta manera:

$i = 0;

while (
$resultados = mysql_fetch_assoc($query)) {

$resultado = $resultados["nombre"];

$varArray[$i] = array("nombre"=>$resultado);

$i++;

}


Y problema resulto, el codigo java ya parsea correctamente el array con varios elementos.

un saludo
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 20:07:54 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /