MySql prob@wBB: Last Threads
Luki 29.12.2002 - 16:22 739 1
Luki
UNDER CONSTRUCTION
|
Will bei meinem board auch so ne Last post anzeige einbauen wie auf oc.at hab eine gefunden die ich mir jetzt schon ein bissal hergerichtet habe: /// Top 5 Posters
$posts5 = $db_zugriff->query('SELECT userid,username,userposts FROM bb1_user_table ORDER BY userposts DESC LIMIT 5');
while ($posts5top = mysql_fetch_array($posts5)):
++$posts5topnbsp;
$posts5name .= "» <a href=members.php?mode=profile&userid=$posts5top[userid]>$posts5top[username]</a><br>";
$posts5post .= "$posts5top[userposts] <br>";
endwhile;
// Top 5 Posters
// Top 5 New Members
$newest5user = $db_zugriff->query('SELECT userid,userposts,username,regdate FROM bb1_user_table ORDER BY regdate DESC LIMIT 5');
while ($newuser5top = mysql_fetch_array($newest5user)):
++$newuser5top;
$newuser5name .= "» <a href=members.php?mode=profile&userid=$newuser5top[userid]>$newuser5top[username]</a><br>";
$newuser5posts .= "$newuser5top[userposts] <br>";
endwhile;
// Top 5 New Members
// Top 5 Thread Replys
$pop5 = $db_zugriff->query('SELECT
bb1_boards.*,
bb1_posts.threadparentid,
bb1_posts.userid,
bb1_posts.posttime,
bb1_threads.threadname,
bb1_threads.topicicon,
bb1_threads.timelastreply,
bb1_threads.views,
bb1_threads.boardparentid as parentid,
bb1_user_table.username
FROM bb1_boards
LEFT JOIN bb1_posts ON (bb1_posts.postid=bb1_boards.lastpostid)
LEFT JOIN bb1_threads ON (bb1_threads.threadid=bb1_posts.threadparentid)
LEFT JOIN bb1_user_table ON (bb1_user_table.userid=bb1_posts.userid)
ORDER BY timelastreply DESC LIMIT 5');
while ($pop5top = mysql_fetch_array($pop5)):
++$pop5top;
$pop5thread .= "» <a href=action.php?action=getlastmain&boardid=$pop5top[parentid]>$pop5top[threadname]</a><br>";
$pop5lastpostid .= "» <a href=members.php?mode=profile&userid=$pop5top[userid]>$pop5top[username]</a><br>";
$pop5views .= "$pop5top[views] <br>";
endwhile;
// Top 5 Thread Replys
eval("\$top5threadstats = \"".gettemplate("stats")."\";");
// Top 5 Statistics
problem liegt darin das er die aktuellesten von je einem forum raussucht -> wenn ich nur zwei foren habe hab ich nur 2 neueste beiträge egal wievieve threads da drinnen sind. php-code ansich wäre ja eh kein problem, ich scheitere nur am mysql *mussmichnochdazusitzendanichtscheck* es wird eh eine ganz einfache lösung sein nur ich komm me net drauf danke für eure hilfe schon im vorraus
|
Philipp
Here to stay
|
Ungefähr so: <?php
$host = "localhost";
$user = "username";
$pw = "passwort";
$db = "datenbank";
@mysql_connect($host,$user,$pw) or die ("Fehler: MySQL server nicht erreichbar");
@mysql_select_db($db) or die ("Fehler: Kann Datenbank nicht auswählen");
$result = mysql_query("SELECT * FROM bb1_threads ORDER BY timelastreply DESC LIMIT 5");
while ($sqldata = mysql_fetch_array($result)) {
if(strlen($sqldata[threadname])>32) $sqldata[threadname] = substr($sqldata[threadname],0,29)."...";
echo <<<AUSGABE
<a href="action.php?action=getlastmain&boardid=$sqldata[boardparentid]">$sqldata[threadname]</a><br />
AUSGABE;
}
?>
Die HTML Ausgabe zwischen echo <<<AUSGABE und AUSGABE; kann beliebig geändert werden. So kann z.b. mit $sqldata[author] der Name des Users eingebaut werden oder mit $sqldata[views] die Pageviews usw.
|