Tengo una duda al respecto de una Consulta ordenada con su condicional.
La consulta la hago a través de una función que está planteada, a grosso modo, de la siguiente forma
Código PHP:
function categoria($id)
{
$cat = mysql_query("SELECT nombre FROM categorias WHERE id = '$id' ORDER BY nombre ASC ");
while ($categoria = mysql_fetch_array($cat)) {
echo = $categoria['nombre']."<br />";
}
}
Creo que la causa es la forma en la que llega el valor de $id, este es un array que contiene varios números, quizá con esta información, pueda dar mas luces para resolver el problema.
Supongamos que la tabla es:
id -- nombre
1 -- nombreC
2 -- nombreA
3 -- nombreB
4 -- nombreE
5 -- nombreD
El valor de $id puede estar formado por varios números diferentes, por ejemplo 1,2,5 ó 1,3,2 ó 5,3,1, ó 4,3,2,1 etc, la combinación es diferente cada vez, porque es el resultado de otra consulta.
Si fuera el array 1,2,5 el resultado de la función debiera ser:
nombreA
nombreC
nombreD
Si fuera el array 5,3,1 el resultado debiera ser:
nombreB
nombreC
nombreD
Pero comentaba anteriormente, si se realiza la consulta pero no se realiza el ordenamiento, supongo que ha de ser porque cada valor ingresa a la función de forma individual, es decir solo 5, solo 3, solo 1 entonces como es solo un valor único no se ordena.
¿Hay alguna forma de poder corregir esto? ¿Me he explicado bien?
Gracias por la ayuda, saludos.