Ver Mensaje Individual
  #4 (permalink)  
Antiguo 27/07/2011, 16:15
Avatar de andresdzphp
andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: mysql_fetch_array 2 veces por qué no funciona?

Cita:
Iniciado por pateketrueke Ver Mensaje
El problema es que dicha función trabaja con un puntero, una ves recorrido no puedes volver a hacerlo a menos que resetees el puntero.



Te invito a leer el manual:
[url]http://php.net/manual/es/function.mysql-data-seek.php[/url]

andresdzphp, es absurdo tener que ejecutar dos veces la misma consulta, usa el sentido común.
Si por eso dije que era rápido, prefiero agregar el resultado a un array si lo voy a usar luego.

Código PHP:
Ver original
  1. <?php
  2.  
  3. $c = mysql_connect('localhost', 'root', 'pass');
  4. $sql = 'select * from persona';
  5. $res = mysql_query($sql);
  6. $num_resultados = mysql_num_rows($res);
  7.  
  8. while ($reg = mysql_fetch_array($res)) {
  9.     $lista[] = $reg['nombre'];
  10. }
  11.  
  12.  
  13. echo implode('<br/>', $lista);
  14.  
  15. echo '<hr />';
  16.  
  17. echo implode('<br/>', $lista);

Ahora aplicando mysql_data_seek como dice @pateketrueke

Código PHP:
Ver original
  1. <?php
  2.         for ($i=0; $i<$num_resultados; $i++)
  3.         {
  4.             $row = mysql_fetch_array($result);
  5.             echo $row['ced'].'<br>';
  6.         }
  7. ?>
  8. <br>
  9. <?php
  10.  
  11.       mysql_data_seek($res, 0);
  12.  
  13.         for ($i=0; $i<$num_resultados; $i++)
  14.         {
  15.             $row2 = mysql_fetch_array($result);
  16.             echo $row2['ced'].'<br>';
  17.         }
  18. ?>
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Última edición por andresdzphp; 27/07/2011 a las 16:36 Razón: Agregando información y aprendiendo más =)