Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ordenar segun variable

Estas en el tema de Ordenar segun variable en el foro de Mysql en Foros del Web. Hola a todos. cada dia entiendo menos el php. A ver... Si coloco esto Código PHP: $query_entrada  =  "SELECT * FROM usuarios WHERE sexo='chica' ORDER BY FIND_IN_SET(orientacion, '$criterio') DESC" ;  me funciona bien con este ...
  #1 (permalink)  
Antiguo 05/06/2010, 10:55
 
Fecha de Ingreso: febrero-2008
Mensajes: 675
Antigüedad: 16 años, 2 meses
Puntos: 5
Ordenar segun variable

Hola a todos.
cada dia entiendo menos el php.
A ver... Si coloco esto
Código PHP:
$query_entrada "SELECT * FROM usuarios WHERE sexo='chica' ORDER BY FIND_IN_SET(orientacion, '$criterio') DESC"
me funciona bien con este isset
Código PHP:
if (isset($_GET['va_orientacion'])) {
    
$criterio $_GET['va_orientacion'];

Ahora quiero ponerle otra variable, o sea que "orientacion" no sea fijo, si no dinamico. así que le coloco una variable en el isset.

Código PHP:
if (isset($_GET['va_orientacion'])) {
    
  
$criterio $_GET['va_orientacion'];
$crite="orientacion";

y en la consulta
Código PHP:
$query_entrada "SELECT * FROM usuarios WHERE sexo='chica' ORDER BY FIND_IN_SET('$crite', '$criterio') DESC"
Pues asi no funciona.... alguna ayudita?
Gracias
  #2 (permalink)  
Antiguo 05/06/2010, 11:08
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Ordenar segun variable

ORDER BY trabaja sobre los campos que existen en la tabla.
Para que eso funcione el primer parámetro debe forzosamente ser el nombre de algún campo en la tabla, y lo que estás poniendo es una cadena de texto (lo estás poniendo entre apóstrofos).
Para que funcionase, ese parámetro debe quedar en la consulta como nombre de columna de la tabla.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 05/06/2010, 11:16
 
Fecha de Ingreso: febrero-2008
Mensajes: 675
Antigüedad: 16 años, 2 meses
Puntos: 5
Respuesta: Ordenar segun variable

Gracias gnzsoloyo, entonces como deberia ser para que pueda usar ese ORDER BY segun el isset?.
es decir, ese ORDER BY, no puedo tenerlo con un solo campo, ya que segun como le llegue el isset ese campo se llama de una forma u otra.
Como deberia de hacerlo?
Gracias
  #4 (permalink)  
Antiguo 05/06/2010, 11:18
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Ordenar segun variable

Quitale los apóstrofos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 05/06/2010, 11:30
 
Fecha de Ingreso: febrero-2008
Mensajes: 675
Antigüedad: 16 años, 2 meses
Puntos: 5
Respuesta: Ordenar segun variable

Gracias gnzsoloyo, que sencillo.
Otra consulta... y si quisiera ordenarlos por otro campo sin perder el primero.
Me explico...

Imaginate que quiero ordenarlos por sexo coloco en el isset
Código PHP:
if (isset($_GET['va_sexo'])) {
    
  
$criterio $_GET['va_sexo];
$crite='
sexo;

despues una vez que me haya devuelto los datos, quiero ordenarlos por orientacion o por provincia o por edad y una vez vuelvan a estar ordenados, pueda ordenarlos por otro campo.
En esta pagina tengo 4 links y tengo 4 isset, que segun lo que le llega, lo ordena. Pero solo se ordenar con 1 isset.
No se si se puede hacer, pero si hay alguna forma, te agradeceria me orientaras.

Un saludo

Etiquetas: variables
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 11:12.