Leider besteht der Fehler immer noch:
Klickt man in der Gruppenrangliste auf die einzelnen Mitspieler, so werden dort die Punkte mit Bonuspunkte korrekt angezeigt. Nicht aber in der Gruppenrangliste selber. Dort wird die Reihenfolge der Gruppen ohne Bonuspunkte und somit falsch berechnet!
Vielleicht könnte sich ein Experte mal der Sache annehmen?
Wie im Letzten Jahr: Gruppenrangliste ohne Bonuspunkte!
- PuengJai
- Erledigt
Ich habe einen Blog Artikel verfasst - Wie benutze ich die Suche richtig - Bitte diesen beachten und auch umsetzen bevor Ihr ein Neues Thema eröffnet!
-
-
Kann mir denn vielleicht jemand sagen, in welcher Datei hierfür gerechnet wird. Dann würde ich mein Glück mal selber versuchen!
-
Dafür benötigst du die Datei include/functions.inc.php, wo du die Funktion getGruppenpunkte aufsuchst ~ Zeile 3835.
Da änderst du einmal die Abfrage in folgende:
Code- $sql = "SELECT ug.group_id AS group_id, ug.group_name AS group_name, SUM(sr.pkt_1day) AS group_pkt, SUM(sr.bon_1day) AS pkt_bon, SUM(sr.pkt_live) AS group_pkt_live, COUNT(DISTINCT sr.user_id) AS user_count"
- ." FROM ". $tbl['saison_ranking'] ." AS sr"
- ." LEFT JOIN ". $tbl['precalc'] ." AS pre ON pre.id = sr.precalc_id"
- ." LEFT JOIN ". $tbl['usergroup'] ." AS ug ON ug.group_id = sr.user_group"
- ." WHERE pre.liga = '". mysql_real_escape_string($liga) ."'"
- ." AND pre.saison = '". mysql_real_escape_string($jahr) ."'";
Wo SUM(sr.bon_1day) AS pkt_bon in der SELECT hinzugefügt wurde.Weiter unten wo die Punkte zusammengezählt werden, ergänzt du die Zeile so:
Zitat$groups[$grp['group_id']]['punkte'] = ($grp['group_pkt'] + $grp['pkt_bon'] + ($live && $show_live ? $grp['group_pkt_live'] : 0));
Wo die eben erstelle Spalte $grp['pkt_bon'] dazu addiert wird. -
Hallo!
Zunächst einmal sorry dass ich mich ert jetzt melde, aber ich war im Urlaub!Ich habe die Änderungen oben vorgenommen, jedoch ohne Erfolg. Die Bonuspunkte werden leider weiterhin nicht gezählt. Vielleicht schaust du mal rein, wenn du ein wenig Zeit hast, ich hänge die geänderte Funktion... mal hier an.
Dankeeeeeee -
Ich habe zwar keine Ahnung :), aber bei mir sieht die Abfrage so aus und es funktioniert.
Code- $sql = "SELECT ug.group_id AS group_id, ug.group_name AS group_name, SUM(sr.pkt_1day) AS group_pkt, SUM(sr.pkt_live) AS group_pkt_live, COUNT(DISTINCT sr.user_id) AS user_count"
- ." FROM ". $tbl['saison_ranking'] ." AS sr"
- ." LEFT JOIN ". $tbl['precalc'] ." AS pre ON pre.id = sr.precalc_id"
- ." LEFT JOIN ". $tbl['usergroup'] ." AS ug ON ug.group_id = sr.user_group"
- ." WHERE pre.liga = '". mysql_real_escape_string($liga) ."'"
- ." AND pre.saison = '". mysql_real_escape_string($jahr) ."'";
-
Warum nur bei mir nicht? Dies hat auch nichts gebracht. Hab mal Screenshots angehängt. In disem Beispiel werden die Supercops falsch angezeigt 261 / 266 Punkte. Die Bonuspunkte werden einfach nicht gezählt!