MySQL Order By Problem

as333

Erfahrenes Mitglied
Hi,

ich habe folgendes Problem.
Habe eine Tabelle in der alle User eingetragen sind.
Diese würde ich gerne sortieren lassen.
Und anschließend durch den userstatus (der userstatus ist entweder 1 oder 0) zuerst die User einloggen lassen die eine 1 haben und erst danach die User mit einer 0.

Wenn ich mir wie folgt die User ausgeben lassen möchte, erscheint immer nur ein User.
In der Tabelle sind aber 30 User drin.


PHP:
$reihenfolge=mysql_query("SELECT * FROM users ORDER BY userstatus DESC, uhrzeit ASC LIMIT 1")
or die(mysql_error());

while($row = mysql_fetch_array($reihenfolge))
{
        // Print out the contents of each row into a table
        echo $row['userstatus'];
        echo "<br>";
        echo $row['uhrzeit'];
        echo "<br>";
}

Und mit der Reihenfolge zum Einloggen habe ich mir es wie folgt überlegt:

PHP:
if ($row['userstatus']=="1")
{
header("Location: Login.php"); 
}
else
{
header("Location: Login1.php");
}

Nur leider funktioniert das nicht.

Könnt ihr mir bitte helfen wie ich das am besten machen kann.
 
Zuletzt bearbeitet:
Ist doch klar, dass da bloß ein Nutzer aus der Datenbank kommt, wenn du in deiner Anfrage ein LIMIT 1 drin stehen hast. Das muss weg.
 
Oh man, na klar.
Das übersehe ich jedes Mal.

Es wird trotzdem irgendwie nicht unterschieden ob der User eine 1 oder 0 hat.

Wie mache ich das am besten?

PHP:
if ($row['userstatus']=="1")
{
header("Location: Login.php"); 
}
else
{
header("Location: Login1.php"); 
}
 
Zuletzt bearbeitet:
Dein Header macht aber auch nichts. Der schreit "Baum!" in den Wald hinein. Besser wäre wenn er schreit: "Baum fällen!"

PHP:
header("Location: foo.php");
 
Hi ZodiacXP,

beim Header hab ich mich vertippt.
da steht schon
header("Location: Login.php")

Nur trotzdem geht es nicht.
Habs mal hier jetzt verbessert.

PHP:
if ($row['userstatus']=="1")
{
header("Location: Login.php");
}
else
{
header("Location: Login1.php");
}
 
Und da wird der Fehler liegen da das Array $row nur solange existiert wie die Schleife läuft.
Nur das Skript ergibt eigentlich keinen Sinn, was soll den genau gemacht werden?
 
Ich möchte das zuerst einmal alle Benutzer aufgelistet werden sollen die sich in der Tabelle users befinden.
Anschließend sollen sich zuerst nacheinander die Users mit der 1 einloggen können und wenn dies geschieht ist sollen sich die Users mit der 0 einloggen können.

Gibt es denn vielleicht eine Möglichkeit, dass das Array länger existiert?
 
Zurück