Foros del Web » Programando para Internet » PHP »

Recorrer registros en php mysql

Estas en el tema de Recorrer registros en php mysql en el foro de PHP en Foros del Web. Buenas, quisiera saber como recorrer registros de un query por ejemplo tengo este codigo: Código PHP: $querypor  =  "SELECT sum(pr.duracion_proc) as suma, otp.estadoxproceso FROM orden_trabajo ot INNER JOIN medico m ON ot.medico_idmedico = m.idmedico INNER JOIN tipo_trabajo AS tt ON ot.tipo_trabajo_idtipo_trabajo = tt.idtipo_trabajo INNER JOIN orden_trabajo_has_proceso AS otp ON ot.idtrabajo =  otp.orden_trabajo_idtrabajo INNER JOIN proceso AS pr ON otp.proceso_idprocesos =  pr.idprocesos where m.idmedico='$idm' and ot.idtrabajo='$idt' ...
  #1 (permalink)  
Antiguo 07/11/2012, 02:45
(Desactivado)
 
Fecha de Ingreso: septiembre-2012
Ubicación: Peru Villa Maria
Mensajes: 29
Antigüedad: 11 años, 6 meses
Puntos: 0
Recorrer registros en php mysql

Buenas,
quisiera saber como recorrer registros de un query por ejemplo tengo este codigo:

Código PHP:

$querypor 
"SELECT sum(pr.duracion_proc) as suma, otp.estadoxproceso
FROM orden_trabajo ot
INNER JOIN medico m ON ot.medico_idmedico = m.idmedico
INNER JOIN tipo_trabajo AS tt ON ot.tipo_trabajo_idtipo_trabajo = tt.idtipo_trabajo
INNER JOIN orden_trabajo_has_proceso AS otp ON ot.idtrabajo =  otp.orden_trabajo_idtrabajo
INNER JOIN proceso AS pr ON otp.proceso_idprocesos =  pr.idprocesos
where m.idmedico='$idm' and ot.idtrabajo='$idt'
group by otp.estadoxproceso
order by ot.fecha_llegada, otp.estadoxproceso, pr.fase_proc"
;


$result3 mysql_query($querypor);
while (
$registro1 mysql_fetch_array($result3))
{
echo 
$registro1['estadoxproceso']."<br>";
echo 
$registro1['suma']."Horas"."<br>";


si pruebo la consulta en el mismo mysql me bota 2 columnas con 2 filas
algo asi:

SUMA ESTADOXPROCESO
4 concluido
2 no concluido

Lo que quiero es guardar en variables por ejemplo el dato '4' y en otra variable el dato '2' entonces como recorrer la fila para que me guarde ese dato, o si derepente no quiero el dato '2' , sino el dato 'no concluido',
como lo hago please ayudenme :s
  #2 (permalink)  
Antiguo 07/11/2012, 03:19
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años
Puntos: 574
Respuesta: Recorrer registros en php mysql

El codigo que pones ya hace un recorrido por las rows de la consulta. Pero le estas diciendo que imprima el valor (echo). Si lo que quieres es guardar el valor en una variable debes asignar el valor obtenido del row a una variable. Como previamente no sabes cuntos datos vas a obtener debes usar una estructura de variables que se pueda adaptar seria el caso de un array de arrays. Es decir si mysql_fetch_array te retorna un registro en forma de array solo tienes que guardar el array de cada registro en un array de arrays, eso te permitira acceder al valor que quieras...

Código PHP:
Ver original
  1. $querypor = "SELECT sum(pr.duracion_proc) as suma, otp.estadoxproceso
  2. FROM orden_trabajo ot
  3. INNER JOIN medico m ON ot.medico_idmedico = m.idmedico
  4. INNER JOIN tipo_trabajo AS tt ON ot.tipo_trabajo_idtipo_trabajo = tt.idtipo_trabajo
  5. INNER JOIN orden_trabajo_has_proceso AS otp ON ot.idtrabajo =  otp.orden_trabajo_idtrabajo
  6. INNER JOIN proceso AS pr ON otp.proceso_idprocesos =  pr.idprocesos
  7. where m.idmedico='$idm' and ot.idtrabajo='$idt'
  8. group by otp.estadoxproceso
  9. order by ot.fecha_llegada, otp.estadoxproceso, pr.fase_proc";
  10.  
  11.  
  12. $result3 = mysql_query($querypor);
  13.  
  14. while($r[]=mysql_fetch_array($result3));
  15.  
  16. echo "<pre>";
  17. //= Prints $r as array =================//
  18. print_r ($r);
  19. //=============================//
  20. echo "</pre>";

$r es tu array de arrays....print_r ($r); solo sirve para que veas la estructura obtenida....


$r[0]['suma'] te da acceso al valor de suma del primer registro
$r[1]['suma'] te da acceso al valor de suma del segundo registro
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 07/11/2012 a las 03:33

Etiquetas: arrayphp, mysql+php, php+recibe, recorrer+datos
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 13:17.