Hozzászólások száma userenként

eMeLA képe

Szeretném megjeleníteni felhasználonként (comment-ben) a hozzászólásainak számát.

Érdemes modult kereseni (én nem találtam), vagy egyszerűbb (és gyorsabb) ha a comment táblából lekérdezem a hozzászólásainak számát, minden comment megjelenítésnél ?

Tud valaki ilyen modult ?

tomihawk képe

Én is megköszönném ha valaki tudna ebben segíteni

0
0
eMeLA képe

A comment.tpl.php-ba:

$db = db_num_rows(db_query("SELECT uid FROM {comments} WHERE uid = %d", $comment->uid))

(nagyrabecsült programozó urak bizonyára tudnak hatékonyabb lekérdezést is :)

0
0

...mit tudok: http://web.termuves.hu

pp képe

Talán így jobb.

$res = db_fetch_object(db_query("SELECT COUNT(uid) AS db FROM {comments} WHERE uid = %d", $comment->uid));
$db = $res->db;

még lehet gyorsítani, ha csak az érdekel, hogy volt-e hozzászólása a usernek, vagy sem.

http://mysqldba.blogspot.com/2007/06/to-count-or-not-to-count.html

A comment.tpl.php-ba tenni sql lekérdezést a lehető legrosszabb megoldás. Inkább írj egy modult, ami ráül a hook_user-re és hozzáadja ezt az infot a user objektumhoz. Én még gyorstáraznám is a dolgot(külön táblába), és ráülnék pluszban a hook_commentre insert és delete opjára is. Persze ezek csak olyan pár ezer hozzászólás felett lesznek jelentősen gyorsabbak, mint a fenti megoldás. ;)

pp
(a comment.tpl.php eredményét szerintem gyorstárazza a Drupal, ugyhogy a gyorstár bekapcsolása hozhat furcsa eredményeket.)

0
0