Ankündigung

Einklappen
Keine Ankündigung bisher.

liga tabelle

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • setTo
    hat ein Thema erstellt liga tabelle.

    liga tabelle

    Servus

    hab da mal ne frage:

    ich bin dabei mir selbst ein script zu bauen, wo man spieltage z.b. von der Bundesliga ect. eintragen kann und dadurch automatisch sich die tabelle erstellt. Sprich: man trägt in den spieltagen die einzelnen tore ein dadurch erkennt das script selbst wer gewonnen hat und es wird automatisch der jeweiligen mannschaft die entsprechenden punkte vergeben, Tore, GegenTore, Siege, Unentschieden, Verloren das datum usw.
    nun kann es ja mal sein das man sich beim spieltag eintippern verschreibt und somit die tabelle falsch wird.
    Deswegen möchte ich die Tabelle auch noch manuell ändern können.
    Sie sortiert nach Punkten und der Tordifferenz anzeigen zu lassen ist ja nicht schwer, aber alle 18 mannschaften sollen in "<input " felder und jedes der felder muss ja natürlich nen eigenen namen haben für das formular. und da komm ich irgendwie nicht weiter.

    die tabelle soll nachher so aussehen:
    Platz - Verein - Runden - Frags - Punkte
    1 - Rheinland-Pfalz - 35-5 - 117-30 - 78
    2 usw...

    wer auf welchem Platz ist, ist aber nicht vordefiniert das soll er ja nach der differenz der runden, frags und punkte sortieren. das heißt auf Platz 1 ist nicht immer wie hier rheinland-pfalz. und alles soll änder bar sein d.h. der Verein bekommt überall ne <select> angabe die runden nen <input> feld sowie frags und punkte, diese müssen aber auch nen einzelnen namen haben die <select angabe bei platz 1 kann ja nicht
    <select name=verein1> heißen und die bei platz 2 auch.

    hoffe habs gut erklärt :P
    Mfg Sascha

  • lazydog
    antwortet
    Zitat von setTo Beitrag anzeigen
    nder wert kann zwar berechnet werden, aber dann kann ich ja in die select abfrage nicht mehr danach sortieren lassen
    Warum nicht? Beispiel:
    Code:
    SELECT
        name,
        lohn,
        lohn_vorjahr,
        lohn_vorjahr - lohn AS differenz
    FROM
        mitarbeiter
    ORDER BY
        differenz

    Einen Kommentar schreiben:


  • setTo
    antwortet
    naja lag an mir hab ausversehen die falsche datei hochgeladen *schäm*

    @ lazydog der wert kann zwar berechnet werden, aber dann kann ich ja in die select abfrage nicht mehr danach sortieren lassen, zumindest wüsste ich nicht das ich direkt bei order by den erst berechnen lassen kann und dann sortieren.
    aber naja es klappt nun einwandfrei und nochmal ein riesen dank an alle

    Einen Kommentar schreiben:


  • lazydog
    antwortet
    Zitat von setTo Beitrag anzeigen
    ... wenn 2 vereine die gleichen Punkte haben soll er nach der variable $difrounds sortieren. Die Variable $difrounds kann aber auch nen minus wert sein, ...
    Wie kann in eine Datenbank-Abfrage nach einer PHP-Variable sortiert werden?
    Aber wahrscheinlich meinst du ja das Attribut difrounds aus der DB (Übrigens sollte man nie berechenbare Daten in der DB speichern). Die Abfrage müsste aber so funktionieren, sofern difrounds nummerisch und nicht unsigned ist.
    Gib halt dei Abfrage mal einfach in eine SQL-Monitor ein.

    Einen Kommentar schreiben:


  • setTo
    antwortet
    ok, das habe ich jetzt auf INT geändert, nun klappt das schonmal.

    Jetzt habe ich noch eine Frage danach bin ich ruhig, lach.

    Er sortiert momentan nach Punkten, wenn 2 vereine die gleichen Punkte haben soll er nach der variable $difrounds sortieren. Die Variable $difrounds kann aber auch nen minus wert sein, also das ist die differenz der gewonnenen Runden und verlorenen Runden.

    momentan ist mein code so:

    PHP-Code:
    $sqlbefehl ="Select vereinID,name,Siege,Unentschieden,Niederlagen,diffrags,difrounds,Punkte 
                From 
                    "
    .PREFIX."liga_vereine Order By Punkte DESC, difrounds DESC
                "

    $ergebnis mysql_query($sqlbefehl)or die(mysql_error()); 
     

    while(
    $row mysql_fetch_array($ergebnis)){ 
    trotzdem wieder rum macht er das nicht. Platz 4 zum Beispiel hat momentan den wert 2, Platz 5 den wert 3, Platz 6 den wert 10 und Platz 7 den wert 6 obwohl alle die selbe Punktzahl haben.

    Einen Kommentar schreiben:


  • lazydog
    antwortet
    Zitat von setTo Beitrag anzeigen
    ja das ist VARCHAR, als was müsste ich das denn setzen damit das klappt?
    Einen nummerischen Wert, INTEGER wahrscheinlich!

    Einen Kommentar schreiben:


  • setTo
    antwortet
    ja das ist VARCHAR, als was müsste ich das denn setzen damit das klappt?

    Einen Kommentar schreiben:


  • litterauspirna
    antwortet
    Ich weis nicht ob es geht bzw. wie es gaht. Das man die höchste Punktezahl prüft und dann danach sortiert. Also 74 Punkte Platz 1 und dann 32 Punkte Platz 2. Das man das im Verhältnis berechnet bei der Ausgabe?

    Einen Kommentar schreiben:


  • lazydog
    antwortet
    Ich gehe mal davon aus dass punkte ein VARCHAR-Attribut ist . Und dann ist die Sortierung absolut korrekt.

    Einen Kommentar schreiben:


  • setTo
    antwortet
    so habs nun mit litterauspirna geschafft danke nochmal

    nun hab ich aber noch eine frage. und zwar wird die tabelle momentan bei der ausgabe nach Punkten sortiert. Aber irgendwie macht der das nicht richtig. Platz 1 hat 9 Punkte genauso wie Platz 2. Auf Platz 3 ist aber einer mit 74 Punkten auf Platz 4 wieder einer mit 6 Punkten usw.

    So hab ich die Abfrage momentan:

    PHP-Code:
    $sqlbefehl ="Select vereinID,name,Siege,Unentschieden,Niederlagen,difrounds,diffrags,Punkte 
                From 
                    "
    .PREFIX."liga_vereine Order By Punkte DESC
                "

    $ergebnis mysql_query($sqlbefehl)or die(mysql_error()); 
     

    while(
    $row mysql_fetch_array($ergebnis)){ 
    Hoffe hier kann mir auch wer helfen weil ich seh hier keinen fehler

    Einen Kommentar schreiben:


  • xueluf
    antwortet
    ohne die vorposts zu gelesen zu haben

    Ohne die Vorposts gelesen zu haben, warum machst dus nicht mit arrays??

    Wenn du bei einem Formularelement nach dem namen [] machst überträgt er es automatisch als array.

    Beispiel:

    PHP-Code:
    // Der Code ist als Pseudocode zu betrachten und
    // spiegelt nur eine Lösungsmöglichkeit dar
    <form action ="#" method = "post">
    <?php
    //Also einfach das komplette Resultset des SQL-Querys durchlaufen...
    while($resultset->next_record()){
    printf('<INPUT NAME = "id[]" value = "%s" TYPE = "hidden">'$resultset[0]);
    printf('<INPUT NAME = "feld1[]" value = "%s">'$resultset[0]);
    printf('<INPUT NAME = "feld2[]" value = "%s">'$resultset[1]);
    //...
    //...
    //... Ebene alle Elemente die du brauchst
    }
    ?>
    <INPUT TYPE = "submit" value = "Änderungen speichern">
    </form>

    Das Array ist dann folgendermaßen anzusprechen

    PHP-Code:
    <?
    // Der Code ist als Pseudocode zu betrachten und
    // spiegelt nur eine Lösungsmöglichkeit dar
    for($i = 0;  $i < count($_POST['id']);$i++){
    $id = $_POST['id'][$i];
    $feld1 = $_POST['feld1'][$i];
    $feld2 = $_POST['feld2'][$i];
    //...
    //Verarbeitung der Werte mit UPDATE....
    //...
    }
    ?>
    Hoffe ich konnte dir helfen!

    Einen Kommentar schreiben:


  • setTo
    antwortet
    kannst du mich pls nochmal im icq anschreiben litterauspirna?
    hab dich ausversehen gelöscht ... verklickt -.-

    Einen Kommentar schreiben:


  • David
    antwortet
    Ja, die Datenbankstruktur wäre schon mal nett.
    Kleine Anmerkung noch
    ORDER BY 'Punkte', 'Rounds', 'Frags' LIMIT '1'
    Statt single quotes gehören da backticks oder garnichts hin
    Code:
    ORDER BY `Punkte`, `Rounds`, `Frags` LIMIT 1

    Einen Kommentar schreiben:


  • litterauspirna
    antwortet
    Poste doch mal die Tabellen Struktur hier. Dann anhand ideser ausgaben poste konkret was du vor hast! Dann kann dir auch geholfen werden! Ohne wirkliche Tabellen Struktur ist da schwierig zu helfen!

    Einen Kommentar schreiben:


  • setTo
    antwortet
    hm das versteh ich nicht ganz, also momentan ist es so geregelt das es 2 tabellen gibt einmal die für die spieltage und dann eine extra mit den vereinen.
    wird ein spieltag eingetragen werden bei der tabelle spieltag datum frags runden vereine usw eingetragen und gleichzeitig in der tabelle vereine die einzelnen runden und frags den vereinen plus gerechnet und die punkte hinzugefügt.
    das klappt auch alles super also da bin ich schonmal froh das es da keine fehler mehr gibt deswegen fänd ichs gut wenn ihr mir da so helfen könntet, wenn ihr möchtet könnt ihr mich auch im icq anschreiben (340188364) dann kann ich das script so wie es derzeit ausschaut mal zeigen.

    mfg sascha

    Einen Kommentar schreiben:

Lädt...
X