Foros del Web » Programando para Internet » PHP »

No funciona while

Estas en el tema de No funciona while en el foro de PHP en Foros del Web. Hola en el siguiente codigo : @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original $select = mysql_query ( 'SELECT * FROM comentarios' , $con ) or die ...
  #1 (permalink)  
Antiguo 21/10/2012, 13:35
Avatar de patilanz  
Fecha de Ingreso: enero-2012
Mensajes: 880
Antigüedad: 12 años, 4 meses
Puntos: 29
No funciona while

Hola en el siguiente codigo :

Código PHP:
Ver original
  1. $select=mysql_query('SELECT * FROM comentarios',$con) or die(mysql_error());
  2.     $sss=mysql_fetch_array($select);
  3.     if($sss){
  4.         $c=0;
  5.         while($fila=mysql_fetch_array($select)){
  6.             print '<div class="comentarios" style="background-color:\''.$colors[$c % 2].'\';color:\''.$colors_c[$c*2].'\'">';
  7.             print 'User:  '.$fila['user'];
  8.             if($fila['web']){
  9.                 print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pagina web'.$fila['web'];   
  10.             }
  11.             print '<br />'.$fila['text'];
  12.             print '</div>';
  13.             $c++;
  14.         }
  15.     }else{
  16.         print 'Todabia no hay comentarios!';   
  17.     }

El while no me imprime nada...

Ni tampoco cuando pongo simplemente print 'prueba';
Pero fuera del while si que me lo imprime...

A que se podria deber esto ?

Saludos
  #2 (permalink)  
Antiguo 21/10/2012, 14:33
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: No funciona while

Prueba así (aunque te parezca, el código no es exactamente igual):
Código PHP:
Ver original
  1. <?php
  2.  
  3. $select = mysql_query('SELECT * FROM comentarios', $con) or die(mysql_error());
  4. if ($select) {
  5.     $c = 0;
  6.     while ($fila = mysql_fetch_array($select)) {
  7.         print '<div class="comentarios" style="background-color:\'' . $colors[$c % 2] . '\';color:\'' . $colors_c[$c * 2] . '\'">';
  8.         print 'User:  ' . $fila['user'];
  9.         if ($fila['web']) {
  10.             print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pagina web' . $fila['web'];
  11.         }
  12.         print '<br />' . $fila['text'];
  13.         print '</div>';
  14.         $c++;
  15.     }
  16. } else {
  17.     print 'Todavia no hay comentarios!';
  18. }
  19. ?>
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 22/10/2012, 11:09
Avatar de patilanz  
Fecha de Ingreso: enero-2012
Mensajes: 880
Antigüedad: 12 años, 4 meses
Puntos: 29
Respuesta: No funciona while

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Prueba así (aunque te parezca, el código no es exactamente igual):
Código PHP:
Ver original
  1. <?php
  2.  
  3. $select = mysql_query('SELECT * FROM comentarios', $con) or die(mysql_error());
  4. if ($select) {
  5.     $c = 0;
  6.     while ($fila = mysql_fetch_array($select)) {
  7.         print '<div class="comentarios" style="background-color:\'' . $colors[$c % 2] . '\';color:\'' . $colors_c[$c * 2] . '\'">';
  8.         print 'User:  ' . $fila['user'];
  9.         if ($fila['web']) {
  10.             print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pagina web' . $fila['web'];
  11.         }
  12.         print '<br />' . $fila['text'];
  13.         print '</div>';
  14.         $c++;
  15.     }
  16. } else {
  17.     print 'Todavia no hay comentarios!';
  18. }
  19. ?>
Gracias ya me funciona :)

Pero una cosa porque al haber guardado el resultado de un select en una variable ya no me funciona??

$sss=mysql_fetch_array($select);

Saludos
  #4 (permalink)  
Antiguo 22/10/2012, 15:07
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: No funciona while

Porque el resultado no estaba operando como un TRUE/FALSE.
Si lees en las FAQs, verás que hay ejemplos como el que te di, donde el IF se hace sobre el result o sobre el la lectura, pero no sobre el array devuelto por el fetch_array()
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 23/10/2012, 09:55
Avatar de patilanz  
Fecha de Ingreso: enero-2012
Mensajes: 880
Antigüedad: 12 años, 4 meses
Puntos: 29
Respuesta: No funciona while

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Porque el resultado no estaba operando como un TRUE/FALSE.
Si lees en las FAQs, verás que hay ejemplos como el que te di, donde el IF se hace sobre el result o sobre el la lectura, pero no sobre el array devuelto por el fetch_array()
Ok gracias

Etiquetas: sql
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 05:09.