Foros del Web » Programando para Internet » PHP »

Ciclo dentro de un ciclo (do while)

Estas en el tema de Ciclo dentro de un ciclo (do while) en el foro de PHP en Foros del Web. Hola a todos tengo una consulta la cual me arroja registros que cumplan determinados requisitos... funciona bien solo que al mandar esto <?php echo $row_actualizar['id']; ...
  #1 (permalink)  
Antiguo 24/09/2012, 13:06
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Ciclo dentro de un ciclo (do while)

Hola a todos tengo una consulta la cual me arroja registros que cumplan determinados requisitos... funciona bien solo que al mandar esto <?php echo $row_actualizar['id']; ?> (Resultado de otra consulta porque trabajo con varias tablas) solo me arroja el id 1 aunque halla más registros a todos los demás les pone el valor del registro 1 en mi bd
(aclaro que no esta mal la consulta ya que probe poniendo exactamente las misma sentencias que en asignaturas)

Código PHP:
 <?php do { ?>

    <td><?php echo $row_actualizar['id']; ?></td>
    <td><?php echo $row_asignaturas['clave']; ?></td>
    <td><?php echo $row_asignaturas['nombre']; ?></td>
    
    <?php } while ($row_asignaturas mysql_fetch_assoc($asignaturas)); ?>

por ejemplo esto me arrojaría

id clave nombre
1 esp1 Español
1 mat1 Matemáticas
1 fis1 Física




como verán siempre repite 1

intente haciendo ciclo en ciclo (según yo xD)
Código PHP:
<?php do { ?>


    <td> <?php do { ?><?php echo $row_actualizar['id']; ?><?php } while ($row_actualizar mysql_fetch_assoc($actualizar)); ?></td>
    <td><?php echo $row_asignaturas['claveasignatura']; ?></td>
    <td><?php echo $row_asignaturas['nombre']; ?></td>
   <?php } while ($row_asignaturas mysql_fetch_assoc($asignaturas)); ?>
Solo me muestra el 1 en el primer registro

id clave nombre
1 esp1 Español
mat1 Matemáticas
fis1 Física


Que puedo hacer para que dentro del ciclo asignaturas arroje mis valores correctos de la consulta actualizar????? osea nececito obtener esto segun mis valores de mi base de datos

id clave nombre
1 esp1 Español
2 mat1 Matemáticas
fis1 Física

En el 3ro. nada por que no existe en mi tabla
  #2 (permalink)  
Antiguo 24/09/2012, 13:16
Avatar de ikaroraul  
Fecha de Ingreso: octubre-2006
Ubicación: La Paz
Mensajes: 391
Antigüedad: 17 años, 6 meses
Puntos: 16
Respuesta: Ciclo dentro de un ciclo (do while)

Muestra el Query que realizas para saber un poco mas.
__________________
Msn: [email protected]
  #3 (permalink)  
Antiguo 24/09/2012, 13:24
marcofbb
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ciclo dentro de un ciclo (do while)

Porque utilizas do while, en vez de while ?

while($row_asignaturas = mysql_fetch_assoc($asignaturas)){
echo $row_actualizar['id'];
}
  #4 (permalink)  
Antiguo 24/09/2012, 13:29
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Ciclo dentro de un ciclo (do while)

En tu while avanzas el registro de $row_asignaturas, pero ¿en dónde avanzas el registro de $row_actualizar?
  #5 (permalink)  
Antiguo 24/09/2012, 14:34
marcofbb
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ciclo dentro de un ciclo (do while)

Como dice el usuario de arriba tienes mal escrito, en vez de $row_actualizar va $row_asignaturas
  #6 (permalink)  
Antiguo 24/09/2012, 14:34
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Ciclo dentro de un ciclo (do while)

Cita:
Iniciado por marcofbb Ver Mensaje
Porque utilizas do while, en vez de while ?

while($row_asignaturas = mysql_fetch_assoc($asignaturas)){
echo $row_actualizar['id'];
}
nO HE USADO bien wl while

lo puse asi
Código PHP:
<?php while($row_asignaturas mysql_fetch_assoc($asignaturas)){

    <
tbody><tr>
     
   echo 
$row_actualizar['id']; 
    echo 
$row_asignaturas['claveasignatura'];
   echo 
$row_asignaturas['nombre'];
 }  
?>
pero solo me arroja un solo registro y son 3 los que cumplen con la consulta :(

además quise meter los echo en mis td y me sale error
  #7 (permalink)  
Antiguo 24/09/2012, 14:35
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Ciclo dentro de un ciclo (do while)

Cita:
Iniciado por marcofbb Ver Mensaje
Como dice el usuario de arriba tienes mal escrito, en vez de $row_actualizar va $row_asignaturas
Si lo cambio solo me arroja un resultado
  #8 (permalink)  
Antiguo 24/09/2012, 15:38
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Ciclo dentro de un ciclo (do while)

Lo he conseguido asi

Código PHP:
<?php do { ?> 


   <?php do { ?>  <td><?php echo $row_actualizar['id']; ?></td> <?php } while ($row_actualizar mysql_fetch_assoc($actualizar)); ?>
    <td><?php echo $row_asignaturas['claveasignatura']; ?></td> 
    <td><?php echo $row_asignaturas['nombre']; ?></td> 
   <?php } while ($row_asignaturas mysql_fetch_assoc($asignaturas)); ?>
Solo que me arroja asi los resultados


ID CLAVE NOMBRE
1 2 Fis1 Fisica



esp1 Español



Mat1 Matematicas



Veran en una misma fila 1 2

y deberia ponerlo en 2

1

2

Que puedo hacer??????
  #9 (permalink)  
Antiguo 24/09/2012, 16:56
 
Fecha de Ingreso: septiembre-2012
Ubicación: Bien lejos
Mensajes: 9
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Ciclo dentro de un ciclo (do while)

Cita:
Iniciado por Briss Ver Mensaje
Lo he conseguido asi

Código PHP:
<?php do { ?> 


   <?php do { ?>  <td><?php echo $row_actualizar['id']; ?></td> <?php } while ($row_actualizar mysql_fetch_assoc($actualizar)); ?>
    <td><?php echo $row_asignaturas['claveasignatura']; ?></td> 
    <td><?php echo $row_asignaturas['nombre']; ?></td> 
   <?php } while ($row_asignaturas mysql_fetch_assoc($asignaturas)); ?>
Solo que me arroja asi los resultados


ID CLAVE NOMBRE
1 2 Fis1 Fisica



esp1 Español



Mat1 Matematicas



Veran en una misma fila 1 2

y deberia ponerlo en 2

1

2

Que puedo hacer??????
si abres una tag hay que cerrarla !

<tbody><tr> je je
  #10 (permalink)  
Antiguo 24/09/2012, 17:08
marcofbb
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ciclo dentro de un ciclo (do while)

Como dice el de arriba, igual te complicas mucho con los whiles, que es exactamente lo que deseas hacer ? solo imprimir el resultado de los 3 datos ?

http://www.marcofbb.com.ar/mysql-con...atos-en-mysql/

Saludos
  #11 (permalink)  
Antiguo 24/09/2012, 17:17
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Ciclo dentro de un ciclo (do while)

Necesito trabajarlos asi

Etiquetas: mysql, registro, tabla, ciclos
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 22:15.