• Jueves 28 de Marzo de 2024, 15:41

Autor Tema:  mysql_fetch_assoc salta primera fila  (Leído 3924 veces)

humbestr

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
mysql_fetch_assoc salta primera fila
« en: Lunes 6 de Septiembre de 2010, 20:45 »
0
Buenas. Tengo un problemita que ojala me pudieran ayudar a resolverlo.

Tengo una consulta mysql y quiero pasarla a un array. Tengo el siguiente codigo, es una funcion de usuario que pasa el resultado de una consulta a un array:

function toArray($resultado)
{
do {
$registros[] = $fila;
}
while ($fila = mysql_fetch_assoc($resultado));
return $registros;
}
$vector = toArray($pru);
echo "<pre>";
print_r($vector);
echo "</pre>";


Aqui esta otro codigo que ya probe:

function toArray($resultado)
{
while ($fila = mysql_fetch_assoc($resultado)) {
$registros[] = $fila;
}
return $registros;
}
$vector = toArray($pru);
echo "<pre>";
print_r($vector);
echo "</pre>";




El detalle es que siempre se "brinca" la primera fila de la consulta, la presenta como nula. Ya probe con mysql_fetch_array y mysql_fetch_row y el resultado es similar. Ojala y tengan alguna sugerencia.

Gracias

DriverOp

  • Miembro MUY activo
  • ***
  • Mensajes: 201
    • Ver Perfil
Re: mysql_fetch_assoc salta primera fila
« Respuesta #1 en: Lunes 6 de Septiembre de 2010, 21:02 »
0
La primera función debería darte error pues $fila no está definida cuando ocurre el primer ciclo del bucle. Creo que lo que estás buscando hacer es esto:

[php:2dz0rdn3]
  1.  
  2. function toArray($resultado) {
  3. $registros = Array();
  4. if ($fila = mysql_fetch_assoc($resultado)) {
  5.   do {
  6.     $registros[] = $fila;
  7.   } while ($fila = mysql_fetch_assoc($resultado));
  8. }
  9. return $registros;
  10. }
[/php:2dz0rdn3]

humbestr

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: mysql_fetch_assoc salta primera fila
« Respuesta #2 en: Lunes 6 de Septiembre de 2010, 21:27 »
0
Gracias DriverOp, pero todavia sigue saltandose la primera fila.

Tambien hice un ciclo con do while para imprimir los datos en pantalla, y si muestra todos los que son, pero al momento de querer pasarlos a un array, omite la primera fila.

Saludos

jodijo5

  • Miembro HIPER activo
  • ****
  • Mensajes: 518
  • Nacionalidad: pe
    • Ver Perfil
    • http://www.bluetecnologia.com
Re: mysql_fetch_assoc salta primera fila
« Respuesta #3 en: Martes 21 de Septiembre de 2010, 05:07 »
0
prueba con esto, es una pequeña variacion del código de mi amigo DriverOp, su código está bien, pero hay algunos servidores que hacen su pataleta de vez en cuando jeje :-D
Código: PHP
  1.  
  2. function toArray($resultado) {
  3.     $registros = Array();
  4.     while ($fila = mysql_fetch_assoc($resultado)) {
  5.         $registros=array_push($registros,$fila);
  6.     }
  7.     return $registros;
  8. }
  9.  
  10.  
=============================
Daniel Pomalaza Mendoza
visita el Dinosaurio Azul :-D
http://bluetecnologia.com

DriverOp

  • Miembro MUY activo
  • ***
  • Mensajes: 201
    • Ver Perfil
Re: mysql_fetch_assoc salta primera fila
« Respuesta #4 en: Viernes 24 de Septiembre de 2010, 18:26 »
0
jodijo5:
Simple y elegante, I like it! :D