Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-10-2015
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
Mostar solo 1er registro y loop para los demas en PHP

Cordial saludo,

Tengo una consulta SQL en MySql la cual da los siguientes registros:
Cita:
NOMBRE - IDENTI - ID_PRO
SILVA TORRES ELIANA - 1151951743 - 8613
SILVA TORRES ELIANA - 1151951743 - 8761
SILVA TORRES ELIANA - 1151951743 - 8808
SILVA TORRES ELIANA - 1151951743 - 9141
SILVA TORRES ELIANA - 1151951743 - 9142
SILVA TORRES ELIANA - 1151951743 - 9143
Necesito un Array el cual muestre asi:

Cita:
[{"NOMBRE":"SILVA TORRES ELIANA","IDENTI":"1151951743","ID_PRO0":"8613","ID_PRO1":"8761","ID_PRO2":"8808","ID_PRO3":"9141","I D_PRO4":"9142",ID_PRO5":"9143"}]
Pero lo que obtengo es esto:

Cita:
[{"NOMBRE":"SILVA TORRES ELIANA","IDENTI":"1151951743","ID_PRO0":"8613"},{"NOMBRE":"SILVA TORRES ELIANA","IDENTI":"1151951743","ID_PRO0":"8613","ID_PRO1":"8761"},{"NOMBRE":"SILVA TORRES ELIANA","IDENTI":"1151951743","ID_PRO0":"8613","ID_PRO1":"8761","ID_PRO2":"8808"},{"NOMBRE":"SILVA TORRES ELIANA","IDENTI":"1151951743","ID_PRO0":"8613","ID_PRO1":"8761","ID_PRO2":"8808","ID_PRO3":"9141"},{ "NOMBRE":"SILVA TORRES ELIANA","IDENTI":"1151951743","ID_PRO0":"8613","ID_PRO1":"8761","ID_PRO2":"8808","ID_PRO3":"9141","I D_PRO4":"9142"},{"NOMBRE":"SILVA TORRES ELIANA","IDENTI":"1151951743","ID_PRO0":"8613","ID_PRO1":"8761","ID_PRO2":"8808","ID_PRO3":"9141","I D_PRO4":"9142","ID_PRO5":"9143"}]
Soy muy novato en PHP y lo poco que hice en el archivo es buscando en internet, pero hay cosas que no manejo. Adjunto el archivo PHP para ayuda en el codigo.

Código PHP:
<?php

  $ID 
$_GET["ID"];

  
$db=new PDO('mysql:dbname=lfpdb;host=localhost;','root','');
  
  
$row=$db->prepare('SELECT NOMBRE,IDENTI,ID_PRO FROM ALUMNO JOIN PRODUCCION ON ID_ALU = ALUMNO WHERE ID_ALU= :ID');
  
  
$row->bindParam(':ID',$ID,PDO::PARAM_STR,6);
  
  
$row->execute();
  
  
$json_data=array();
  
  
$num 0;
  
  foreach(
$row as $rec)
  {  
    
$json_array['NOMBRE']=$rec['NOMBRE'];  
    
$json_array['IDENTI']=$rec['IDENTI']; 
    
$str = (string) $num;
    
$json_array["ID_PRO$str"]=$rec['ID_PRO'];  
    
array_push($json_data,$json_array);  
    
$num++;
  }  
  
  echo 
json_encode($json_data); 

?>
Gracias de antemano.
Responder Con Cita
  #2  
Antiguo 05-10-2015
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Evidentemente, tu problema está en el bucle foreach. No lo uses y añade únicamente el primer elemento encontrado. Nunca he usado PDO, pero seguro que tiene un método para obtener el primer registro.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #3  
Antiguo 05-10-2015
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
Gracias por tu respuesta, segun pude investigar el PDO lo utilizo para enviar un parametro a la consulta, pero he tratatado de realizar solo el primer registro pero me da error.

Problema solucionado,
Solo debia colocar
array_push($json_data,$json_array);
Fuera del loop.

Mil gracias por tu interes.
Responder Con Cita
  #4  
Antiguo 06-10-2015
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
De nada. Para eso estamos aquí.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #5  
Antiguo 06-10-2015
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
Ñuño Martínez sabes programar Android?
Responder Con Cita
  #6  
Antiguo 07-10-2015
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Técnicamente, sí que sé. Pero creo que esto ya se sale del tema del foro y deberías buscar y abrir otro hilo si no encuentras nada.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Update!!!, pero solo para un registro ELINK Firebird e Interbase 6 08-01-2008 20:26:41
Usar un solo procedimiento almacendado para restar o sumar valores a un mismo registro Chogo Trucos 2 11-05-2007 17:39:01
Como Insertar Registro Nuevo ENTRE los demás Registros???? AGAG4 Conexión con bases de datos 1 18-01-2006 03:03:45
Error con int: Error:loop control variable declared in the for-loop is used outside.. DarkByte C++ Builder 3 13-09-2005 06:52:14
mostrar SOLO cliente de los que tengo un sólo registro Giniromero SQL 15 11-06-2004 12:33:19


La franja horaria es GMT +2. Ahora son las 06:15:11.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi