Ver Mensaje Individual
  #12 (permalink)  
Antiguo 17/04/2006, 17:33
okram
Invitado
 
Mensajes: n/a
Puntos:
Cita:
Iniciado por xyyy7
con el uso del mysql_fetch_assoc solucione el problema
una importante aclaracion... el uso de mysql_fetch_assoc no fue la solucion a tu problema. Bien pudiste haber usado mysql_fetch_array y el resultado era el mismo... mysql_fetch_array tiene un segundo parametro opcional:

mysql_fetch_array ( int id_resultado [, int tipo_de_resultado] )

tipo_de_resultado puede ser MYSQL_ASSOC, MYSQL_NUM, y MYSQL_BOTH...
  1. mysql_fetch_array($query,'MYSQL_ASSOC'); te devolvera un array que tendra como indices solo los nombres de las columnas de la tabla. Colocar ese parametro es como usar mysql_fetch_assoc($query);
  2. mysql_fetch_array($query,'MYSQL_NUM'); te devolvera un array que tendra como indices un numero relativo a la columna que refiere, empezando de cero para la primera columna, 1 para la segunda y asi sucesivamente. Es igual a mysql_fetch_num($query);
  3. mysql_fetch_array($query,'MYSQL_BOTH'); te devuelve tanto indices asociativos como numericos, es decir las dos anteriores juntas, y es este el valor que el segundo parametro trae por defecto.
Use esta funcion porque veo que trabajas con indices asociativos, y no requieres de los indices numericos. mysql_fetch_assoc consume menos recursos que mysql_fetch_array.

Te sugiero revises el manual de php.net para estas funciones:

http://www.php.net/mysql_fetch_array
http://www.php.net/mysql_fetch_assoc
http://www.php.net/mysql_fetch_row

Lo que en relidad soluciono tu problema es el uso de la variable $i que se incrementa en 1 por cada bucle del while, asi te dara el orden que deseas.

Ahora, hablando de un menor consumo de recursos por parte del servidor, a mi tambien me vale la aclaracion de JorgitoAlfajor, la verdad siempre me pregunte como detener el while una vez que se cumplia cierta condicion, pero nunca me preocupe en buscar sobre eso, gracias JorgitoAlfajor.

Suerte