MyBB.de Forum

Normale Version: Übersicht aller Themen mit eigenen Beiträgen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Die Anzahl der Ergebnisse kannst du über einen zweiten Query ermitteln lassen.
PHP-Code:
$query2 $db->query("
    SELECT p.tid, t.*
    FROM "
.TABLE_PREFIX."posts p
    LEFT JOIN "
.TABLE_PREFIX."threads t ON (p.tid=t.tid)
    WHERE p.visible != '0' AND t.visible != '0' AND p.uid = '
{$uid}'
    GROUP BY p.tid
"
);

$numthreads $db->num_rows($query2); 
Den Query hatte ich schon, nur die "num_rows" waren mir nicht bekannt. Vielen Dank für den Hinweis!!! Wink

Die Seite und die Templates sind fertig und es klappt alles. Die Themen und die jeweiligen Verfasser werden ausgegeben. Jetzt bleibt nur noch zu hoffen, dass die User damit zufrieden sind. Wink
Hallo zusammen,

die Abfrage funktioniert wunderbar auch bei mir, daher schon mal vielen Dank dafür.

Nun wollte ich das ganze aber in eine COUNT -Abfrage umwandeln, um die Themenanzahl auszugeben, allerdings hab ich wohl irgendwas falsch gemacht, da die Anzahl nicht stimmt.

Wenn ich die o.g. Abfrage
PHP-Code:
<?php
             $rpgquery 
$db->query("
    SELECT p.tid, t.*
    FROM "
.TABLE_PREFIX."posts p
    LEFT JOIN "
.TABLE_PREFIX."threads t ON (p.tid=t.tid)
LEFT JOIN "
.TABLE_PREFIX."forums f ON (f.fid=t.fid)
    WHERE p.visible != '0' AND t.visible != '0' AND p.uid = '
{$memprofile['uid']}' AND f.parentlist LIKE '17,23,%' and t.sticky !='1'
    GROUP BY p.tid
      
"
);

while(
$data $db->fetch_array($rpgquery)) {
    echo 
"<a href=\"showthread.php?tid={$data['tid']}\">".htmlspecialchars_uni($data['subject'])."</a><br />";
}
?>


 einfüge, liest er mir alle 10 Themen aus, die auch infrage kommen.

Ändere ich die Abfrage in 

PHP-Code:
$rpgquery "SELECT COUNT(*) as counttopics
    FROM "
.TABLE_PREFIX."posts p
    LEFT JOIN "
.TABLE_PREFIX."threads t ON (p.tid=t.tid)
LEFT JOIN "
.TABLE_PREFIX."forums f ON (t.fid=f.fid)
    WHERE p.visible != '0' AND t.visible != '0' AND p.uid = '
{$memprofile['uid']}' AND f.parentlist LIKE '17,23,%' and t.sticky !='1'
GROUP BY p.tid"
;

$rpgnum $db->fetch_field($db->query($rpgquery), "counttopics"); 

Stimmt die Anzahl nicht, es wird nämlich 9 ausgegeben.

Ich hab schon diverse parentlist Kombinationen versucht, um dem Unterforum auf den Grund zu gehen, wo es nicht passt, bin aber gescheitert. Daher vermute ich, dass etwas an der Abfrage an sich nicht stimmt.

Könnte mir jemand einen Tipp geben, wo etwas fehlt oder falsch ist?
Die Abfrage sollte korrekt sein. Der Fehler liegt wahrscheinlich woanders.
Ich hab es jetzt anders gelöst, weniger elegant, aber es funktioniert. Smile

Zitat:<?php
 $rpgquery = $db->query("SELECT * FROM ".TABLE_PREFIX."posts p
    LEFT JOIN ".TABLE_PREFIX."threads t ON (p.tid=t.tid)
LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid=t.fid)
    WHERE p.visible = '1' AND t.visible = '1' AND p.uid = '{$memprofile['uid']}' AND f.parentlist LIKE '17,23,%' and t.sticky !='1' AND t.closed !='1'
    GROUP BY p.tid");
$rpgnum = $db->num_rows($rpgquery);
?>
Seiten: 1 2