Rangliste wird nicht angezeigt

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!
  • Brauche Hilfe!


    Bei mir wird leider keine Rangliste angezeigt. Ergebnisse wurden ordentlich vom Server übertragen und werden richtig dargestellt. Mitspieler haben ihre Punkte erhalten.

    Klicke ich auf Rangliste, dann sieht das so aus:


    Rangliste.jpg


    Ich habe die php-Version von 7.2 auf 5.6 gewechselt. Keine Änderung! Welche Datei müsste ich austauschen.


    Hat jemand eine Idee?

  • Bei mir lag es an der MySQL Einstellung "ONLY_FULL_GROUP_BY".


    Ich habe in der content/sieger.php das SQL Statement in Zeile 59 von


    Code
    1. $sqlBonus = $CONFIG['MYSQL']['CONNECT']->query("SELECT (SELECT pkt FROM ". $CONFIG['MYSQL']['PREFIX'] ."bonus_punkte tb2 WHERE tb2.bid = tb1.bid AND tb1.date < tb2.date ORDER BY tb2.date ASC LIMIT 1) AS pkt FROM ". $CONFIG['MYSQL']['PREFIX'] ."bonus_tipps tb1 LEFT JOIN ". $CONFIG['MYSQL']['PREFIX'] ."bonus_answers tb3 ON tb3.bid = tb1.bid WHERE tb1.usr = " . $_SESSION['s_id'] . " AND tb3.answer IS NULL GROUP BY tb1.bid");

    in

    Code
    1. $sqlBonus = $CONFIG['MYSQL']['CONNECT']->query("SELECT (SELECT pkt FROM ". $CONFIG['MYSQL']['PREFIX'] ."bonus_punkte tb2 WHERE tb2.bid = tb1.bid AND tb1.date < tb2.date ORDER BY tb2.date ASC LIMIT 1) AS pkt FROM ". $CONFIG['MYSQL']['PREFIX'] ."bonus_tipps tb1 LEFT JOIN ". $CONFIG['MYSQL']['PREFIX'] ."bonus_answers tb3 ON tb3.bid = tb1.bid WHERE tb1.usr = " . $_SESSION['s_id'] . " AND tb3.answer IS NULL GROUP BY tb1.bid, tb1.date");

    geändert. Anschliessend funktionierte die Anzeige bei mir bestens.


    Alternativ die ONLY_FULL_GROUP_BY Einstellung in MySQL (sql_mode) entfernen. Dies sollte ebenfalls funktionieren.

  • Danke! Hat Super geklappt. Nun werden aber noch bereits gelöschte Mitspieler in der Rangliste angezeigt. Hilft ein db-refresh?

  • Rangliste der Tipper neu erstellen (inkl. Boni) beim db-refresh sollte helfen.

    Ansonsten die User direkt in der DB löschen, da sie über die Userverwaltung ja nur deaktiviert werden (und nicht vollständig gelöscht).

    Da ich selber keine gelöschten Mitspieler habe, kann ich es gerade nicht selber testen.

  • db-refresh hat leider nicht geholfen. Dann muss ich die Nutzer wohl direkt aus der DB löschen. Vorher erstelle ich aber noch ein Backup.


    Danke für die Hilfe!

  • Zufrieden mit dem Script und dem Support? Möchtest du uns unterstützen?

    Dann könntest du etwas
    SPENDEN


    *** Benutze die Suchfunktion und zeige Eigeninitiative ***
    *** Bitte fülle deine Profildaten aus, sonst können wir dir nicht helfen! ***
    *** Wenn dir der Beitrag eines Users geholfen hat, tut ein Klick auf den Gefällt-Button nicht weh ***

  • bei mir auch nicht...

    Habe natürlich das letzte Update drauf.

    Noch habe ich keine Fehlerfindung gemacht.

    dito!


    /index.php?page=rangliste/rangliste/sieger/ bringt die fehlerhafte Ansicht

    /index.php?page=rangliste/rangliste/kompakt/ funktioniert

  • So, der "Fehler" tritt bei mir nur im ausgeloggten Zustand auf! Bin ich angemeldet, funktioniert alles. Sorry!

    Ich habe die Rangliste und Mitspieler für nicht eingeloggte Besucher sichtbar gemacht (EXTERN statt INTERN)


    Code
    1. $CONFIG['RESTRICTED']['EXTERN'][2] = "rangliste";
    2. $CONFIG['RESTRICTED']['EXTERN'][4] = "teilnehmer";


    Gibt es aber dennoch eine Möglichkeit das für normale Besucher sichtbar zu machen?


    habe die inc,content.php in Zeile 486 von

    Code
    1. header ("location: ".$CONFIG['PATH'].gLink("rangliste/rangliste"));
    2. # geändert in:
    3. header ("location: ".$CONFIG['PATH'].gLink("rangliste/rangliste/kompakt"));

    nun wird die kompakte Ansicht direkt angezeigt für Besucher.

  • Hab den Fehler gefunden...

    habe doch tatsächlich eine fehlerhafte in.functions.admin.php gehabt. Ich kann mir das beim besten Willen nicht erklären warum.

    Wahrscheinlich Übertragungsfehler (hatte welche und habe sie aber wiederholt)

    XCRIPT.DE - Home of BuLitipp, the original!

    Zufrieden mit dem Skript und dem Support? Möchtest du uns unterstützen?

    Dann könntest du etwas

    SPENDEN

  • Guten Morgen Zusammen!


    Die Rangliste ist aktuell bei uns noch Inhaltlos, es wird der Standard-Text dargestellt: "Hier findet ihr, sobald die ersten Ergebnisse eingetragen sind, ein kleines Siegertreppchen, welches die Top 3 anzeigt.". Allerdings sind keine User dargestellt.

    Serverdaten habe ich geladen, die Ergebnisse von Russland gegen Saudi-Arabien sind eingetragen. Aber die Rangliste ist bei uns noch außer Funktion. Hätte einer von euch dahingehend eine Idee? DB-Refresh habe ich schon gemacht bzw. die Rangliste neu erzeugen lassen.




    Grüße

  • Alles klar, danke!

    Habe jetzt das SQL-Statement aus Zeile 59 in der Sieger.php ausgetauscht und ein DB-Refresh durchgeführt, die inhaltlose Rangliste ist bei mir allerdings noch präsent.

  • Habe das gleiche Problem. Habe das Statement ausgetauscht und auch das Mysql-Setting angepasst (danach das originalstatement wieder rein). Er lädt jetzt zwar prinzipiell die Seite, aber es werden keine Spieler angezeigt. DB-Refresh und Cronjob habe ich ausgeführt.


    pasted-from-clipboard.png

  • Mich wundert es gerade das der eine Eintrag Rot dargestellt wird - kann es damit zusammenhängen das ich aktuell noch auf der Version .304 statt auf der .305 bin? Welche Dateien der aktuellen Version muss ich noch behalten damit Spielerdaten etc. nicht angegriffen werden? Ich habe bereits einige Anpassungen durch Tipps anderer Threads vorgenommen, diese halfen allerdings nicht. Ggf. hilft es, auf die neue Version zu aktualisieren.



    Grüße

  • Kann ich bestätigen --- der "Downgrade" von PHP 7.1 auf 7.0 funktioniert!! :)

    "Zeige mir einen guten und kultivierten Verlierer und ich zeige dir einen Versager." :search:Knute Rockne

  • Tja, schade. Der Downgrade bewirkt das die Webseite bei mir überhaupt nicht mehr geht :-( Derzeit läuft alles mit 7.2.6.


    Okay, php Version 7.0.5 geht :-) also alles gelöst (wichtig, dann müsst ihr aber auch die original Datei benutzen)