Archives FluxBB.fr

Les archives de FluxBB.fr

Vous n'êtes pas identifié(e).

#1 09-01-2009 14:24:20

cavalier19
Membre

Afficher top 10 posteur

Bonjour,
j'ai mis ce mod ici, top 10 posteur.
Seulement j'aimerais l'afficher en dessous de "En ligne aujourd'hui" dans le même block donc.
Voici ma page en image pour mieux comprendre, cliquez ici.
J'ai essayé mais après le forum bug donc je fais une erreur de placement mais je ne sais pas ou le mettre...
Voici le code ma page index.php :

// utilisateurs en ligne aujourd'hui
    $todaystamp = strtotime(date('Y-m-d'));

    $result = $db->query('SELECT username, id, last_visit from '.$db->prefix.'users WHERE last_visit >= \''.$todaystamp.'\' ORDER by last_visit DESC') or error('Impossible de retrouver la liste des utilisateurs en ligne aujourd\'hui', __FILE__, __LINE__, $db->error());

    $users_today = array();
    while ($pun_user_online_today = $db->fetch_assoc($result))
        $users_today[] .=  "\n\t\t\t\t".'<dd><a href="profile.php?id='.$pun_user_online_today['id'].'" title="Dernière visite de '.pun_htmlspecialchars($pun_user_online_today['username']).' : '.format_time($pun_user_online_today['last_visit']).'">'.pun_htmlspecialchars($pun_user_online_today['username']).'</a>';
        
    $num_users_today = count($users_today);
    echo "\t\t\t\t".'<dd>'.$lang_index['Users online'].': <strong>'.$num_users.'</strong></dd>'."\n\t\t\t\t".'<dd>'.$lang_index['Users today'].': <strong>'.$num_users_today.'</strong></dd>'."\n\t\t\t\t".'<dd>'.$lang_index['Guests online'].': <strong>'.$num_guests.'</strong></dd>'."\n\t\t\t".'</dl>'."\n";


    if ($num_users > 0)
        echo "\t\t\t".'<dl id="onlinelist" class= "clearb">'."\n\t\t\t\t".'<dt><strong>'.$lang_index['Online'].': </strong></dt>'."\t\t\t\t".implode(',</dd> ', $users).'</dd>'."\n\t\t\t".'</dl>'."\n";
    else
        echo "\t\t\t".'<div class="clearer"></div>'."\n";
        // liste utilisateurs en ligne aujourd'hui
    echo "\t\t\t".'<dl id="onlinetodaylist">'."\n\t\t\t\t".'<dt><strong>'.$lang_index['Online today'].': </strong></dt>';
                
    if ($num_users_today > 0) 
        echo implode(',</dd> ', $users_today).'</dd>'."\n\t\t\t".'</dl>'."\n";
    else
        echo '<dd><em>'.$lang_index['None'].'</em></dd>'."\n\t\t\t".'</dl>'."\n";

}
else
    echo "\t\t".'</dl>'."\n\t\t\t".'<div class="clearer"></div>'."\n";

?>
        </div>
    </div>
</div>
<!-- BEGIN MOD TOP 10 -->
    <div id="top10" class="block">
        <div class="box">
            <div class="inbox">
            <p><strong>Top 10 posteurs :</strong> 
            <?php 
                $result = $db->query('SELECT id, username, num_posts FROM '. $db->prefix .'users ORDER BY num_posts DESC LIMIT 10', true)or error('Database error', __FILE__, __LINE__, $db->error());
                while($top10_membre = $db->fetch_assoc($result))
                {
                    echo '<a href="profile.php?id='. $top10_membre['id'] .'">'. $top10_membre['username'] .'</a> (<i>'. $top10_membre['num_posts'] .'</i>), ';
                }
            ?>
            </p>
            </div>
        </div>
    </div> 
    <!-- END MOD TOP 10 -->

Est ce que quelqu'un peut m'aider ?
D'avance merci !

Hors ligne

#2 10-01-2009 19:10:55

cavalier19
Membre

Re : Afficher top 10 posteur

Après de longue recherche, j'ai enfin réussi à afficher le top10 posteur dans mon block, voici une image pour vous montrer ici.

Le seule problème qu'il me reste, c'est afficher le tire: "Top 10 posteur: LES PSEUDOS"
Pouvez vous m'aider ?

Dernière modification par cavalier19 (10-01-2009 19:12:13)

Hors ligne

#3 12-01-2009 09:55:32

cavalier19
Membre

Re : Afficher top 10 posteur

Voici mon code:

$result = $db->query('SELECT id, username, num_posts, g_color FROM '. $db->prefix .'users LEFT JOIN '. $db->prefix .'groups ON '.$db->prefix.'users.group_id = '.$db->prefix.'groups.g_id ORDER BY num_posts DESC LIMIT 10', true)or error('Database error', __FILE__, __LINE__, $db->error());
        while($top10_membre = $db->fetch_assoc($result))
        {
        if($top10_membre['g_color'] != NULL)
      
            echo '<a href="profile.php?id='. $top10_membre['id'] .'"><span style="color: '.$top10_membre['g_color'].'">'. $top10_membre['username'] .'</span></a> (<i>'. $top10_membre['num_posts'] .'</i>), ';
        else
            
           echo '<a href="profile.php?id='. $top10_membre['id'] .'">'.$top10_membre['username'] .'</a> (<i>'. $top10_membre['num_posts'] .'</i>), ';
        }
            ?>

J'ai cherché pour afficher le titre "Top 10 posteurs: LES PSEUDOS", seulement je ne sais pas ou le mettre car quand je le met le forum bug sad
Est ce que vous pouvez m'aider ?

Hors ligne

#4 12-01-2009 18:11:03

actuboard
Membre

Re : Afficher top 10 posteur

a coté de "echo" je pense.


Forum : http://actuboard.com
Forum de test : http://test.actuboard.com
"Merci d'aller sur le forum de test pour vérifier une "mod""

Hors ligne

#5 12-01-2009 20:14:14

cavalier19
Membre

Re : Afficher top 10 posteur

Merci ça marche wink

Hors ligne

Pied de page des forums