Foros del Web » Programando para Internet » PHP »

problema al ordenar

Estas en el tema de problema al ordenar en el foro de PHP en Foros del Web. hola gente tengo un problema al ordenar una lista hago mi consulta de forma... Código PHP: <?php //recivo los campos por get.... //forma 1 funciona... puedo poner DESC y ASC y va bien $sql = mysql_query ( "SELECT * FROM tabla WHERE campo = '$GET[campo]' ORDER BY campo DESC" ) ...
  #1 (permalink)  
Antiguo 06/03/2008, 00:05
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
problema al ordenar

hola gente tengo un problema al ordenar una lista hago mi consulta de forma...

Código PHP:
<?php
//recivo los campos por get....
//forma 1 funciona... puedo poner DESC y ASC y va bien
$sql=mysql_query("SELECT * FROM tabla WHERE campo = '$GET[campo]' ORDER BY campo DESC")//etc.........
//HASTA aqui todo bien pero el order by desc y asc lo controlo con unos botoncitos tonces la idea seria poner algo como .....

$trae $_GET[ordenador];

//y hago...

$sql=mysql_query("SELECT * FROM tabla WHERE campo = '$GET[campo]' ORDER BY campo '$trae'")//etc.........


//donde trae puede ser ASC o DESC se entiende
?>
mi problema es que haci no funciona simplemente no ordena nada....
alguna sugerencia.....
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #2 (permalink)  
Antiguo 06/03/2008, 00:45
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Re: problema al ordenar

bueno se me ocurrio una forma y funciona...

hacer....

Código PHP:
if ($_GET[ordenador] == "DESC")
{
$sql=mysql_query("SELECT * FROM tabla WHERE campo = '$GET[campo]' ORDER BY campo DESC");
}
else
{
$sql=mysql_query("SELECT * FROM tabla WHERE campo = '$GET[campo]' ORDER BY campo ASC");

y me funciona al ordenar campos tipo int pero campos tipo varchar no me va el ASC :/ solo el DESC...... y no tengo ni idea.....
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #3 (permalink)  
Antiguo 06/03/2008, 00:55
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Re: problema al ordenar

andale ya encontre el problema y quede nuevamente pillo, les comento....

cuando hago un select hago...

Código PHP:
if ($_GET[ordenador] == "DESC")
{
$sql=mysql_query("SELECT * FROM tabla WHERE campo = '$GET[campo]' ORDER BY campo DESC");
}
else
{
$sql=mysql_query("SELECT * FROM tabla WHERE campo = '$GET[campo]' ORDER BY campo ASC");

ahora que resulta que campo del order by lo cambio por un cambio x en este caso son, marca, precio y anyo.....

con anyo y precio me van bien ya era por eso, pero con marca no por que tengo guardados numeros relacionados a la tabla marcas.....

tonce como haria pa ordenar alfabeticamente en ese caso???? alguna sugerencia...
si solo me traigo los ids.. :/ por ello no me iba el order by con las marcasy con lo dema si....

o sea mi consulta es mas meno asi.....


Código PHP:
<?php
$campim 
$_GET[campo];
//donde aqui puede ser como dije marca, precio o anyo. solo problemas pa ordenar con marca...
//alguna idea plis

if ($_GET[ordenador] == "DESC")
{
$sql=mysql_query("SELECT * FROM tabla WHERE campo = '$_GET[campo]' ORDER BY '$campim' DESC");
}
else
{
$sql=mysql_query("SELECT * FROM tabla WHERE campo = '$_GET[campo]' ORDER BY '$campim' ASC");

//y depues aqui mas cpdigo como 
$datos mysql_fetch_array()......
?>


saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
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 16:53.