FluxBB.fr

Le site des utilisateurs francophones de FluxBB.

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

#1 09-03-2013 13:16:18

Wagon
Membre
Inscription : 22-05-2006
Messages : 17

Recalculer les messages utilisateurs

Salut

Comment faire pour simplement recalculer tous les messages de chaque utilisateur ?

Car à chaque suppression de topic ou message divers, le compte ne se met jamais à jour hmm

Merci :=)

Hors ligne

#2 09-03-2013 13:47:13

Wagon
Membre
Inscription : 22-05-2006
Messages : 17

Re : Recalculer les messages utilisateurs

Voici le code pour ceux qui veulent :

$q = mysql_query('SELECT id FROM fluxbb_users') or die(mysql_error());

while($r = mysql_fetch_array($q))
{
    $q_count = mysql_query('SELECT COUNT(*) AS nb_p FROM fluxbb_posts WHERE poster_id = '.$r['id']);
    $r_count = mysql_fetch_array($q_count);

    mysql_query('UPDATE fluxbb_users SET num_posts = '.$r_count['nb_p'].' WHERE id = '.$r['id']);
}

Hors ligne

#3 09-03-2013 17:22:40

barbuslex
Membre
Inscription : 05-06-2008
Messages : 200
Site Web

Re : Recalculer les messages utilisateurs

Merci sa peut servir wink

Hors ligne

#4 10-03-2013 17:09:09

Spiky
Membre
Inscription : 10-04-2008
Messages : 829

Re : Recalculer les messages utilisateurs

Il serait pas mal d'en faire un plugin TrAsHeR wink

Bon après réflexion, il me semblait avoir vu un plugin de Mpok qui faisait ceci.
C'est celui-ci : Nettoyage v2.0

mini_617349nettoyage.jpg
cliquez pour agrandir
il doit fonctionner sur la 1.5.x vu qu'il fonctionnait sur la 1.4x : http://fluxbb.fr/forums/viewtopic.php?pid=98194#p98194

Dernière modification par Spiky (12-03-2013 07:11:36)


I don't play against a team in particular. I play to fight against the idea to lose... Life is beautiful.
Quelque #ID et beaucoup de .CLASS

Hors ligne

#5 11-03-2013 19:50:33

adaur
Membre
Lieu : Derrière Notepad ++ !
Inscription : 25-09-2008
Messages : 1 937
Site Web

Re : Recalculer les messages utilisateurs

Je m'en sers régulièrement Spiky, je confirme. Veillez seulement à convertir le fichier en UTF-8 sans BOM pour avoir les caractères spéciaux affichés correctement.


"As code is more often read than written it's really important to write clean code." - Franz
Twitter: @adaurfr
Mon fork de FluxBB: FeatherBB

Hors ligne

#6 12-03-2013 07:03:30

Spiky
Membre
Inscription : 10-04-2008
Messages : 829

Re : Recalculer les messages utilisateurs

@Mpok
Il reste des traces de punbb.fr !!!
Lors de la migration certains liens non pas étaient converti.
Et au passage, reconvertir les liens punres.org en .net serait pas mal aussi.

@filing
C'est le cas pour le plugin wink
Voici la page ou le lien est ok : http://fluxbb.fr/mods/mods.php?mid=173

P.S: j'ai mis mon post à jour

Dernière modification par Spiky (12-03-2013 07:13:19)


I don't play against a team in particular. I play to fight against the idea to lose... Life is beautiful.
Quelque #ID et beaucoup de .CLASS

Hors ligne

#7 04-05-2013 07:21:16

Mpok
Néo Admin
Inscription : 10-08-2006
Messages : 2 950
Site Web

Re : Recalculer les messages utilisateurs

Spiky a écrit :

@Mpok
Il reste des traces de punbb.fr !!!
Lors de la migration certains liens non pas étaient converti.
Et au passage, reconvertir les liens punres.org en .net serait pas mal aussi.

Ouais…
Tu n'es pas le premier à me le signaler. MAIS c'est une GROSSE procédure à lancer (sur l'ensemble de la base) ET SANS réelle possibilité de test (on peut tester des parties, mais pas l'ensemble). Pour l'instant, c'est donc juste sur la liste 'TODO'. smile

Hors ligne

#8 15-08-2013 21:47:45

Wagon
Membre
Inscription : 22-05-2006
Messages : 17

Re : Recalculer les messages utilisateurs

J'ai du modifier le code :

// Recomptage des posts
    $q = $db->query('SELECT id FROM '.$db->prefix.'users ORDER BY id');
    while($r = $db->fetch_assoc($q))
    {
        $q_count = $db->query('SELECT COUNT(*) AS nb_p FROM '.$db->prefix.'posts WHERE poster_id = '.$r['id']);
        $r_count = $db->fetch_assoc($q_count);

        $db->query('UPDATE fluxbb_users SET num_posts = '.$r_count['nb_p'].' WHERE id = '.$r['id']);
    }

Hors ligne

Pied de page des forums