Der Titel könnte mein Problem nicht vollständig erklären, aber ich war mir nicht sicher, wie in einem Titel, so werde ich mehr hier erklären.MySQL/PHP-Reihenfolge nach mehreren Spalten mit einem an der Spitze
Ich habe eine Tabelle, die verschiedene Informationen über Bands/Acts enthält und ich habe eine Browse-Seite, die alle Acts in einem bestimmten Bereich usw. zeigt. Jeder Act kann sagen, ob er Getränke/Essen/Unterkunft/Extra/Reisen möchte bezahlt werden. Auf der Durchsuchen-Seite habe ich auch eine Sortierfunktion, mit der ich die Ergebnisse sortieren kann, nach denen die Acts was bezahlt haben wollen.
Es gibt fünf Kontrollkästchen für jede der Optionen, aber wenn ich nur die Reise zum Beispiel überprüfe, sind Taten, die Reisen sowie die anderen angekreuzt sind oben, wenn ich will, dass nur die Reise für oben bezahlt werden soll .
Derzeit beginnt die Sortierfunktion mit der ursprünglichen Abfrage von beim Surfen:
SELECT * FROM acts
Und dann fügt die Sortierfunktion die ORDER BY-Anweisung je nachdem, was geprüft wurde:
SELECT * FROM acts ORDER BY travel DESC
Oder wenn mehr als eins wurde ausgewählt:
SELECT * FROM acts ORDER BY travel DESC, food DESC
Aber wie gesagt das geht nicht oder der Liste richtig (also für die zweite Sortierung nach Abfrage würde ich einen Akt wünschen, der nur Reise und Essen an der Spitze wollte).
Ich habe auch versucht, in ORDER BY ASC für die Optionen hinzuzufügen, die nicht ausgewählt wurden, aber das hat nicht geholfen.
Auch die Spalten in der Datenbank enthalten entweder "ja" oder "nein", weshalb ich DESC verwendet habe, wenn ich möchte, dass sie oben sind. Ich habe die Datenbank nicht erstellt und sie kann auch nicht geändert werden.
Danke für jede Hilfe.
EDIT: Sie können sehen, was ich hier meine: http://www.acthook.com/browse.php Wenn Sie die Durchsuchen-Felder leer und klicken Sie auf Durchsuchen, um alle Ergebnisse zu erhalten, dann tick Reisen und klicken Sie auf sortieren, gibt es einen Akt nur Reise Teilweise auf der ersten Seite .
diese Abfrage ziemlich ok mir scheint ... es sollte man zurückgehen ursprünglich erwartet –
es funktioniert aber nicht, auch wenn ich es über phpMyAdmin probiere, habe ich getestet, nur nach Reise sortiert, aber die Handlung mit nur Reise überprüft ist in der Nähe der unteren statt der oberen –