Foros del Web » Programando para Internet » PHP »

Ordena al revez los resultados..

Estas en el tema de Ordena al revez los resultados.. en el foro de PHP en Foros del Web. Hola supongo que mi problema debe ser algo sencillo, pero he probado a cambiar algunas cosas y no logro hacer que me ordene los datos ...
  #1 (permalink)  
Antiguo 16/08/2011, 07:56
 
Fecha de Ingreso: mayo-2004
Mensajes: 102
Antigüedad: 19 años, 11 meses
Puntos: 5
Ordena al revez los resultados..

Hola supongo que mi problema debe ser algo sencillo, pero he probado a cambiar algunas cosas y no logro hacer que me ordene los datos al revez...

El codigo del for es el siguiente:
Código PHP:
<?php 
mysql_select_db
($database_localhost$localhost);
    
$cursoidele $row_listar_cursos['id_curso'];
$query_listprice_list "SELECT * FROM price_list WHERE id_course='$cursoidele' ORDER BY length(weeks) ASC";
$listprice_list mysql_query($query_listprice_list$localhost) or die(mysql_error());
$row_listprice_list mysql_fetch_assoc($listprice_list);
$totalRows_listprice_list mysql_num_rows($listprice_list);


for (
$i mysql_num_rows($listprice_list) - 1$i >= 0$i--) {
    if (!
mysql_data_seek($listprice_list$i)) {
        echo 
"No se encuenta la fila $i: " mysql_error() . "\n";
        continue;
    }

    if (!(
$row_listprice_list mysql_fetch_assoc($listprice_list))) {
        continue; 
?>   
   <?php }
?>   <option value="<?php echo $row_listprice_list['price'];?>"><?php echo $row_listprice_list['weeks']; ?></option>    
<?php }mysql_free_result($listprice_list);?>
</select>
__________________
Bruno Quintana
  #2 (permalink)  
Antiguo 16/08/2011, 08:00
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Ordena al revez los resultados..

Sólo tienes que cambiar el SELECT de ASC a DESC.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #3 (permalink)  
Antiguo 16/08/2011, 10:11
 
Fecha de Ingreso: mayo-2004
Mensajes: 102
Antigüedad: 19 años, 11 meses
Puntos: 5
Respuesta: Ordena al revez los resultados..

Hola,

Claro ya habia probado con eso, pero si hago lo que tu dices ordena los numeros asi

"9
8
7
6
5
4
3
2
1
10
11
12
13
14
15
16
17
18
19
20"

Mientras qeu como esta ahora ordena desde el 20 al 1, creo que el error esta en el For, es que normalmente utilizo Do y While solo que en este caso utilice For, porque estoy aplicando el codigo dentro de un Do, entonces sinceramente no tengo ni idea que puede ser...

Sigue oyendo sugerencias! Gracias de todas formas!
__________________
Bruno Quintana
  #4 (permalink)  
Antiguo 16/08/2011, 12:11
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: Ordena al revez los resultados..

1) Y que importa que uses ese codigo dentro de un ciclo do? puedes tener ciclos anidados :|

2) Por que recorres con el for desde num_rows-1 hasta 0? y si en lugar de eso recorres de 0 a num_rows-1 ? :|
  #5 (permalink)  
Antiguo 16/08/2011, 13:30
 
Fecha de Ingreso: mayo-2004
Mensajes: 102
Antigüedad: 19 años, 11 meses
Puntos: 5
Respuesta: Ordena al revez los resultados..

Hola Darkasecas,
Disculpa mi desconocimiento pero como seria para hacer que recorra asi como tu dices?
for ($i = mysql_num_rows($listprice_list) -1; $i >= 0; $i--) {
Gracias por tu tiempo!
__________________
Bruno Quintana
  #6 (permalink)  
Antiguo 17/08/2011, 01:36
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Ordena al revez los resultados..

Esto:
for ($i = mysql_num_rows($listprice_list) - 1; $i >= 0; $i--)
por:
for ($i = 0; $i < mysql_num_rows($listprice_list); $i++)

Por cierto, si te lo coloca así, es porque tu campo de números no es integer (cosa del todo loca). Te lo está colocando como si fuera una cadena.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #7 (permalink)  
Antiguo 18/08/2011, 04:26
 
Fecha de Ingreso: mayo-2004
Mensajes: 102
Antigüedad: 19 años, 11 meses
Puntos: 5
Respuesta: Ordena al revez los resultados..

Muchas gracias! ahora funciona, y gracias por tu sugerencia!! un saludo!
__________________
Bruno Quintana

Etiquetas: mysql, 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 01:56.