ORDER - Probleme bei Zahlel?

poolpage

Erfahrenes Mitglied
Ich habe ein Sporttoto-Skript geschrieben und kämpfe bei der Ausgabe der Rangliste mit den Tücken von "ORDER BY" in der MySQL-Anweisung. In der DB sind folgende Daten vorhanden:

username punkte
poolpage 39
similie 8
david 10
triggerfish 9
pete

(Bei Pete hat es noch keinen "punkte"-Eintrag).

Der Code sieht wie folgt aus:

PHP:
<mysql_connect gesnippt>
$sqlbefehlrangliste = "SELECT username, punkte FROM lbftoto ORDER BY punkte DESC";
$ergebnis = mysql_query($sqlbefehlrangliste, $conn);

$i = 1;
echo("<br>
Die Sporttoto-Tabelle bezieht sich auf die Summer der bisher im Sporttoto erreichten Punkte. 
Diese Punkte sind in der Community-Punkte-Tabelle bereits enthalten.<br><br>
<table>
<tr>
 <td width=\"50\">Rang </td>
 <td width=\"120\">User </td>
 <td>Punktzahl </td>
</tr>");

while($rangliste = mysql_fetch_array($ergebnis, MYSQL_ASSOC)) {

echo("<tr><td>$i.</td><td>$rangliste[username]</td><td>$rangliste[punkte]</td></tr>");
$i++;
}
echo("</table>")

Das Problem - die MySQL-Anweisung sortiert völlig falsch - ausgegeben wird nämlich folgendes:

1. triggerfish 9
2. similie 8
3. poolpage 39
4. david 10
5. pete

Wenn ich in der MySQL-Anweisung "ORDER BY username DESC" eingebe, sortiert er wiederum richtig, aber bei den Punkten gibt es Probleme. Weiss jemand, wie ich meine Rangliste schön nach Punkten ausgeben kann?

Danke :) und Gruss,
poolpage
 
Zuletzt bearbeitet:
du müsstest mir mal nähere angaben zu dem tabellenaufbau geben
was für datendypen haben die einzelnen felder

mfg

leukos
 
@ TimeFlash

Ich arbeite mit MySQL, nicht mit MSSQL?!

@ Leukos

Danke für den Hinweis, "punkte" hatte das Attribut "VARCHAR", es muss natürlich "INT" heissen :)

Es funktioniert jetzt alles ;-)

Danke für Eure Hilfe & Gruss,
poolpage
 

Neue Beiträge

Zurück