Ergebnis absteigend sortieren

marcus24

Mitglied
Also, derzeit mach ich eine Datenbank die Zahlenwerte von der mysql Datenbank ausliest und per php-code zusammenrechnet. Nur will ich, dass das Endrgebnis in absteigender reihenfolge sortiert wird. Ich erkär es mal anhand eines simplen beispieles:

Es werden 3 Verschiedenen Zahlenwerte aus der mysql Datenbank ausgelesen: zB.: ergebnis1, ergebnis2 und ergebnis3. Und jetzt lass ich die 3 Zahlenwerte im PHP Script zusammenrechnen, endergebnis = ergebnis1 + ergebnis2 + ergebnis3; Und das Endergebnis will ich jetzt in eine Tabelle absteigend sortiert übertragen.

Könnt mir da einer helfen? Hab derzeit keinen Plan von :/
 
Die Sortierung kannst du bei der Ausgabe des Ergebnises vornehmen.

PHP:
$query=mysql_query("SELECT spalte FROM tabelle ORDER BY spalte DESC")

Mit DESC werden die Datensätze Absteigend ausgegeben. (Standartmäßig ASC)
 
Ne, ne. Das Endergebnis wird ja nicht direkt von der mysql db ausgelesen. Sonst hätt ich es schon gelöst. Es werden paktisch nur 3 Zwischenergebnisse von der mysql db ausgelesen die dann in php zusammengerechnet werden zu einem Endergebnis. Und das sollte dann absteigend sortiert werden.
 
Also willst du die zustandekommenden Endergebnisse in Variablen speichern und dann die Variablenergebnisse sortieren ?

Müsste mitm Array gehn...
 
Ok, ich poste mal den wichtigesten Teil des Scriptes.

Code:
<?php 
$sql = "SELECT ergebnis_a, ergebnis_b, ergebnis_c, ergebnis_d FROM ergebnis_total";
 
$spieler_query = mysql_query($sql) or die("Anfrage nicht erfolgreich");
 
while ($spieler = mysql_fetch_array($spieler_query)){
 
$gesamt = $spieler['ergebnis_a'] + $spieler['ergebnis_b'] + $spieler['ergebnis_c'] + $spieler['ergebnis_d'];
?>
 
<tr>
	<td width="24.0% " height="5px"><p align="left"><font color="#ffffff"><?php echo $spieler['ergebnis_a']?></font></td>
<td width="11.0% " height="5px"><p align="right"><font color="#ffffff"><?php echo $spieler['ergebnis_b']?></font></td>
<td width="11.0% " height="5px"><p align="right"><font color="#ffffff"><?php echo $spieler['ergebnis_c']?></font></td>
<td width="11.0% " height="5px"><p align="right"><font color="#ffffff"><?php echo $spieler['ergebnis_d']?></font></td>
<td width="15.0% " height="5px"><p align="right"><font color="#ffffff"><?php echo $gesamt ?></font></td>
</tr>
<?php
}
?>

Und bei $gesamt kommt dann das Gesamtergebnis heraus und das sollte absteigend sortiert werden.
 
Zuletzt bearbeitet:
PHP:
 <table>
<?php
$end=0; 
 
$sql = "SELECT ergebnis_a, ergebnis_b, ergebnis_c, ergebnis_d FROM ergebnis_total";
 
$spieler_query = mysql_query($sql) or die("Anfrage nicht erfolgreich");
 
while ($spieler = mysql_fetch_array($spieler_query)){

//speichert das Ergebnis im Array $gesamt[] 
$gesamt[] = $spieler['ergebnis_a'] + $spieler['ergebnis_b'] + $spieler['ergebnis_c'] + $spieler['ergebnis_d'];

// zählt die Werte
$end++; 

}
// Sortiert das Ergebnis
usort($gesamt);
$i=0;
while ($i < $end) {
//Gibt das Ergebnis aus
echo "<tr><td>".$gesamt[$i]."</td></tr>";
?>
</table>

Versuch das mal
zumindest müsste das in die richtige Richtung gehen
 
Zurück