Ergebnis 1 bis 8 von 8

Thema: Einträge Zusammenzählen

  1. #1
    HTML Newbie
    Registriert seit
    15.05.2005
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Einträge Zusammenzählen

    Hallo Leute

    Ich habe für unsere virtuelle F1 Liga ein Script gebastelt, damit wir die Ergebnisse der Rennen viel einfacher eintragen können.

    Im Prinzip steht das ganze Script und ist fertig, nur habe ich ein Problem mit der Sortierung der Ausgabe.

    Ich poste erstmal den relevanten Code:

    Code:
    for &#40;$i=1; $i<$num+1; $i++&#41;
    
      &#123;
    
        $fahrzeug = mysql_result&#40;$res, $i-1, "Team"&#41;;	
    
    	$spanien = mysql_result&#40;$res, $i-1, "punkte_spanien"&#41;;
    
    	$monaco = mysql_result&#40;$res, $i-1, "punkte_monaco"&#41;;
    
    	$europa = mysql_result&#40;$res, $i-1, "punkte_europa"&#41;;
    
        $kanada = mysql_result&#40;$res, $i-1, "punkte_kanada"&#41;;
    
        $usa = mysql_result&#40;$res, $i-1, "punkte_usa"&#41;;
    
    	$frankreich = mysql_result&#40;$res, $i-1, "punkte_frankreich"&#41;;
    
        $grossbritannien = mysql_result&#40;$res, $i-1, "punkte_grossbritannien"&#41;;
    
        $deutschland = mysql_result&#40;$res, $i-1, "punkte_deutschland"&#41;;
    
        $ungarn = mysql_result&#40;$res, $i-1, "punkte_ungarn"&#41;;
    
        $belgien = mysql_result&#40;$res, $i-1, "punkte_belgien"&#41;;
    
        $italien = mysql_result&#40;$res, $i-1, "punkte_italien"&#41;;
    
        $china = mysql_result&#40;$res, $i-1, "punkte_china"&#41;;
    
        $japan = mysql_result&#40;$res, $i-1, "punkte_japan"&#41;;
    
        $brasilien = mysql_result&#40;$res, $i-1, "punkte_brasilien"&#41;;
    
        $australien = mysql_result&#40;$res, $i-1, "punkte_australien"&#41;;
    
        $malaysia = mysql_result&#40;$res, $i-1, "punkte_malaysia"&#41;;
    
        $bahrain = mysql_result&#40;$res, $i-1, "punkte_bahrain"&#41;;
    
        $sanmarino = mysql_result&#40;$res, $i-1, "punkte_sanmarino"&#41;;
    
    	
    
    	$punktetotal = $spanien+$monaco+$europa+$kanada+$usa+$frankreich+$grossbritannien+$deutschland+$ungarn+$belgien+$italien+$china+$japan+$brasilien+$australien+malaysia+$bahrain+$sanmarino;
    
    	
    
    if &#40;$i == 1 || $i == 2 || $i ==3&#41;
    
    &#123;
    
    echo "<tr bgcolor=\"#000000\"><td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$i</td>
    
    	<td align=\"center\" class=\"row1\" width=\"9%\"><span class=\"Stil3\">$fahrzeug</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$spanien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$monaco</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$europa</td>
    
        <td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$kanada</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$usa</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$frankreich</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$grossbritannien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$deutschland</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$ungarn</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$belgien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$italien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$china</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$japan</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$brasilien</td>	
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$australien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$malaysia</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$bahrain</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$sanmarino</td>
    
    	<td align=\"center\" class=\"row1\" width=\"5%\"><span class=\"Stil3\">$punktetotal</td>";
    
    	&#125;
    
    	else &#123;
    
    
    
    	echo "<tr bgcolor=\"#000000\"><td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$i</td>
    
    	<td align=\"center\" class=\"row1\" width=\"9%\"><span class=\"Stil2\">$fahrzeug</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$spanien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$monaco</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$europa</td>
    
        <td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$kanada</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$usa</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$frankreich</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$grossbritannien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$deutschland</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$ungarn</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$belgien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$italien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$china</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$japan</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$brasilien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$australien</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$malaysia</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$bahrain</td>
    
    	<td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil2\">$sanmarino</td>
    
    	<td align=\"center\" class=\"row1\" width=\"5%\"><span class=\"Stil2\">$punktetotal</td>";
    
    &#125;
    
    	
    
    	&#125;
    
    echo "</table></span>";
    Ich habe also Tabellen für jede Strecke angelegt, und zähle die Punkte für jedes Team zusammen. Das Problem ist, das mir die Teams nicht nach den Gesamtpunkten ausgespuckt werden. ($punktetotal)

    Mir ist schon klar wieso das nicht funktioniert so, aber ich finde einfach keine Lösung für das Problem. Gibts irgend ein Trick damit ich ein Punktetotal kriege ohne das manuell eintragen zu müssen? Vielleicht über die Datenbank (Mysql) selber?

    Ich danke euch im voraus,
    Freundliche Grüsse
    SirGyr
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Gast

    Standard

    Wenn du mal deine Datenbanktabellen-Struktur postest, kann ichs dir sagen

  3. #3
    HTML Newbie
    Themenstarter

    Registriert seit
    15.05.2005
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Eine Tabelle, danach folgende Felder:
    Feld Typ
    user_id int(2)
    Team varchar(15)
    punkte_australien int(2)
    punkte_bahrain int(2)
    punkte_belgien int(2)
    punkte_brasilien int(2)
    punkte_china int(2)
    punkte_deutschland int(2)
    punkte_europa int(2)
    punkte_frankreich int(2)
    punkte_grossbritannien int(2)
    ....etc.

    Hilft das weiter?

  4. #4
    Gast

    Standard

    also mysql_result ist nicht die optimale wahl, du solltest direkt auf das result-array zugreifen, das spart dir eine menge Arbeit.

    SELECT * FROM tabelle WHERE team LIKE 'irgendwas';

    und dann kannst du das resultset auch direkt in der ausgabe abarbeiten:
    Code:
    <td align=\"center\" class=\"row1\" width=\"9%\"><span class=\"Stil3\">$result&#91;"fahrzeug"&#93;</td>
    
    
     <td align=\"center\" class=\"row1\" width=\"4%\"><span class=\"Stil3\">$result&#91;"punkte_spanien"&#93;</td>
    und am ende dann
    Code:
    $gesamt = $result&#91;"punkte_spanien"&#93;+$result&#91;"punkte_monaco"&#93;+...

  5. #5
    Meister(in)
    Registriert seit
    13.04.2005
    Ort
    ABG
    Beiträge
    498
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Naja ! SeinProblem besteht aber darin das er gerne das beste Team (höchste punkte ) als erstes ausgeben will und dann die teams mit den jeweils niedrigeren Punkten

    also würdest du die gesamtpunkte in einer Datenbank speichern wie z.B.

    Tabelle --> Top_Teams

    id (int)
    team_name (text)
    gesamtpunkte (int)

    damit köntest du dann bei mysql_query eine sortierung machen ....
    Code:
    $top_teams = @mysql_query&#40;"SELECT * FROM `Top_Teams` ORDER BY gesamtpunkten DESC"&#41;;
    Mit DESC oder ASC kannst du aufsteigend oder absteigend Sortieren !die Anzahl der Teams ermitteln

    die Anzahl der Teams ermitteln
    Code:
    $anzahl = @mysql_num_rows&#40;$top_teams&#41;;


    Und jetzt noch die ausgaben !
    Code:
    if&#40;$anzahl&#41;&#123;
      for&#40;$i=1;$i<$anzahl;$i++&#41;&#123;
     team = mysql_query&#40;"SELECT * FROM `deine_TABELLE` WHERE TEAM='" . mysql_result&#40;$top_teams,$i,"Top_Teams.team_name"&#41; . "'"&#41;;
     echo "Nr. $i &#58; $team";
     &#125;
    &#125;

    Homepage -->Sturmtrupp-Ost
    Projekt -->Recording System

  6. #6
    HTML Newbie
    Themenstarter

    Registriert seit
    15.05.2005
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Das ist richtig ja. Aber das ganze Script macht ja erst richtig Sinn wenn ich nicht von Hand alles ausrechnen muss. Sprich die Gesamtpunkte sollte mein Script zusammenzählen, ohne meine manuelle Beihilfe.

    Hat jemand ne weitere Idee wie ich das Bewerkstelligen kann? Gibts ne Möglichkeit die Punkte in der Datenbank selbst auszurechnen? So ne Art auto_increment das die eingetragenen Punkte berücksichtigt...

    Aber danke erstmal für eure Mühen!

  7. #7
    Gast

    Standard

    ja, die moeglichkeiten gibt es,

    schau dir mal die Dokumentation zu SQL / MySQL an:


    http://dev.mysql.com/doc/mysql/en/index.html

    Dort insbesondere die Syntax zu SELECT und Subselects, SUM, MAX, HAVING und ORDER und die Syntax zu arithmetrischen Operationen.

    Damit kannst du dein Problem loesen.

  8. #8
    HTML Newbie
    Themenstarter

    Registriert seit
    15.05.2005
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Ok, dann schau ich mich mal um

    Danke euch allen!

Ähnliche Themen

  1. SQL-Einträge mit Apostoph
    Von tepsch im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 06.12.2007, 12:40
  2. Einträge editieren
    Von Svente im Forum Forum-Hilfe.de intern
    Antworten: 2
    Letzter Beitrag: 31.07.2007, 22:03
  3. Email an GB-Einträge
    Von Virtualthorsten im Forum Forum-Hilfe.de intern
    Antworten: 3
    Letzter Beitrag: 22.12.2005, 19:48
  4. Einträge zusammenzählen
    Von im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 17.12.2005, 20:49
  5. java-script zusammenzählen.
    Von GreenRover im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 21.03.2005, 18:12

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •