Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Formar json

Estas en el tema de Formar json en el foro de PHP en Foros del Web. Estoy intentando formar un json pero obtengo los resultados como texto, me puede ayudar alguien por favor? No tengo problema en poner todo el codigo ...
  #1 (permalink)  
Antiguo 09/10/2020, 14:06
 
Fecha de Ingreso: enero-2008
Ubicación: Valencia
Mensajes: 65
Antigüedad: 16 años, 10 meses
Puntos: 2
Formar json

Estoy intentando formar un json pero obtengo los resultados como texto, me puede ayudar alguien por favor?
No tengo problema en poner todo el codigo

Código PHP:
$query "SELECT * FROM peliculas LIMIT " $page_first_result ',' $results_per_page;  
 
$result mysqli_query($conn$query);  

 while (
$row mysqli_fetch_array($result)) {        
     
$item $row['titulo'] . $row['genero'];  
     echo 
$item;      
 } 
Y lo que obtengo intentando montar el json no el lo correcto, puesto que me gustaria es

Código PHP:
[
{
id"1",
off_line"0",
},
id"2",
off_line"0"

Esto es lo que hago:

Código PHP:
while ($row $result->fetch_assoc()) {  
    
$item $row;     
    
$json json_encode($itemtrue); 
      
     echo 
$json
     
 } 


Gracias
  #2 (permalink)  
Antiguo 10/10/2020, 22:21
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: Formar json

Insertar cada par de datos en un arreglo dentro de otro en cada ciclo del bucle, y al final emplea la función json_encode() en el arreglo resultante.

Código PHP:
Ver original
  1. $json = [];
  2.  
  3. while ($row = $result->fetch_assoc()) {  
  4.     $json[] = [
  5.         'id' => $row,
  6.         'off_line' => true
  7.     ];
  8. }
  9.  
  10. echo json_encode($json);

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: formar, json
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:20.