Spieltagtagsieger mit Realnamen

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!

  • Hallo,

    ich stelle gerade mein Tippspiel auf Realnamen um. Hat auch überall bis auf die anzeige der Spieltagsieger auf der Willkommensseite funktioniert.


    Kann mir einer von euch einen Tipp geben wie ich dies auf Realnamen umstellen kann?


    Vielen Dank schon mal im voraus.


    LG MichaR2112

  • In der include/functions.inc.php findest du die Methode "get_day_winner". Dort gibt es am Ende der Methode ein Array $daywinner, wo alles gespeichert wird. Dort gibt es auch die Zeile:

    Code
    1. $daywinner[$dw['spieltag']]['winner'][$dw['user_id']]['user_name'] = $dw['user_name'];

    Dort kannst du nach dem "=" die Methode oder Variable hinterlegen, um den realen Namen abzulegen.

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

    Dann könntest du etwas SPENDEN. :)


    HERTHA BSC heißt unser Verein
    HERTHA BSC wird es immer sein!

  • Ah sorry, der Thread ist bei mir irgendwie untergegangen.


    Ich bin davon ausgegangen, dass du schon irgendwo eine Funktion hast, wo du den Realnamen herausbekommst. Wie hast du denn in den anderen Stellen des Tippspiels die Realnamen reingebastelt?

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

    Dann könntest du etwas SPENDEN. :)


    HERTHA BSC heißt unser Verein
    HERTHA BSC wird es immer sein!

  • Hi,

    ich habe 1. in der funtions.inc.php dies hier unten dran gehangen


    // NEU wegen Realen Namen in den Ranglisten


    function getUserFullName($userID) {

    global $MYSQLI, $tbl;


    $sqlUser = mysqli_query($MYSQLI, "SELECT user, vorname, nachname FROM ". $tbl['user'] ." WHERE id = '".(int)$userID."'");

    $rowUser = mysqli_fetch_array($sqlUser);

    $numUser = mysqli_num_rows($sqlUser);


    if($rowUser['vorname'] != '' && $rowUser['nachname'] != '') {

    return $rowUser['nachname'] . ', ' . $rowUser['vorname'];

    } else {

    return $rowUser['user'];

    }

    }


    und 2. bei der willkommenseite z.b. bei den Top5 diesher


    <td align="left" width="70%">

    <?php echo $values['platz']; ?>. <a href="?site=stats&user=<?php echo $key;?>"><?php

    // echo $values['user_name']; // Anzeiger mit USER_Name

    echo getUserFullName($values['user_id']); // Anzeige mit realem Namen und Vornamen

    ?></a>

    </td>

    <td align="right" style="padding:2px;">

    <?php echo $values['punkte_total'];?>

    </td>

  • Ja, sorry. :saint:

    Dann musst du folgende Zeile:

    Code
    1. $daywinner[$dw['spieltag']]['winner'][$dw['user_id']]['user_name'] = $dw['user_name'];

    mit dieser ersetzen:

    Code
    1. $daywinner[$dw['spieltag']]['winner'][$dw['user_id']]['user_name'] = getUserFullName($dw['user_id']);

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

    Dann könntest du etwas SPENDEN. :)


    HERTHA BSC heißt unser Verein
    HERTHA BSC wird es immer sein!

  • In der content/tipps.php in Zeile 869 (in etwa), da müsste so etwas in der Richtung stehen:

    PHP
    1. <a href="<?php echo $_SERVER['PHP_SELF']; ?>?site=msg&amp;action=send&amp;id=<?php echo $user; ?>">
    2. <?php echo $name ?>
    3. </a>

    Das müsstest du in folgendes ändern:

    PHP
    1. <a href="<?php echo $_SERVER['PHP_SELF']; ?>?site=msg&amp;action=send&amp;id=<?php echo $user; ?>">
    2. <?php echo getUserFullName($user); ?>
    3. </a>

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

    Dann könntest du etwas SPENDEN. :)


    HERTHA BSC heißt unser Verein
    HERTHA BSC wird es immer sein!

  • Hallo FIEDLWDD ,

    danke dir funktioniert.

    Habe noch zwei Frage.


    1. wie sortiere ich dann nun nach Fullname. Im Moment scheint er nach username weiterhin zu sortieren

    2. bei den usertipps im admin-bereich kann man via dropdown den tipper auswählen. hier würde ich gern auch auf fullname umstellen. wo und wie mache ich das?

  • zu 1.) In der content/tipps.php findest du in Zeile ~792 folgende Abfrage:

    Code
    1. $query = "SELECT tipps.id, tipps.u_id, tipps.s_id, tipps.datum, tipps.tore_heim,"
    2. ." tipps.tore_gast, user.user"
    3. ." FROM ". $tbl['tipps'] ." as tipps"
    4. ." LEFT JOIN ". $tbl['user'] ." as user ON tipps.u_id = user.id"
    5. ." WHERE (". substr($fetchGames, 0, -4) .")"
    6. . $users
    7. ." ORDER BY user.user ASC";

    Achtung, dort gibt es zwei fast identische Abfragen, aber da du vermutlich kein phpbb-Forum verwendest, musst du in die Abfrage des else-Zweiges.


    Wenn du nach Nachname, Vorname sortieren möchtest, änderst du das ORDER BY so:

    Code
    1. ORDER BY user.nachname ASC, user.vorname ASC


    Wenn du nach Vorname, Nachname sortieren möchtest, änderst du das ORDER BY so:

    Code
    1. ORDER BY user.vorname ASC, user.nachname ASC


    zu 2.) Dazu musst du in die content/admin_tippen.php.

    Um auch schon die Sortierung zu ändern, in Zeile ~359:

    Code
    1. $query = "SELECT aktiv, id, user"
    2. ." FROM ". $tbl['user']
    3. ." WHERE aktiv = 1"
    4. ." ORDER BY user ASC;";

    Dort auch das ORDER BY in folgendes ändern:

    Code
    1. ORDER BY nachname ASC, vorname ASC


    In Zeile ~377 findest du folgenden Code:

    Code
    1. $user = $data['user'];

    Diesen in folgenden ändern:

    Code
    1. $user = getUserFullName($data['id']);

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

    Dann könntest du etwas SPENDEN. :)


    HERTHA BSC heißt unser Verein
    HERTHA BSC wird es immer sein!