Log in

View Full Version : Top 5 Last Threads On index.php


mcyates
10-02-2003, 10:09 PM
I have the top.5.threads on my index page but the problem is, when i click on any of the top 5 newest threads it takes me to the first message posted. I need it to take me to the latest thead (the last thread) posted on the topic, does anyone know how this can be done. The code for the last 10 threads is below. If posswible could someone alter it for me and then post it in a reply to this topic. Thanks. Mine is called the Top 10 Thread Replys as i have set it to show 10 threads instead of 5.

// Top 10 Thread Replys
// Top 1 Most Popular Thread
$pop1 = $DB_site->query('SELECT title,threadid,views FROM thread ORDER BY views DESC LIMIT 1');
while ($pop1top = mysql_fetch_array($pop1)):
++$pop1topnbsp;
$pop1title .= "<a href=showthread.php?s=$session[sessionhash]&threadid=$pop1top[threadid]>$pop1top[title]</a>";
$pop1views .= "$pop1top[views]";


Thanks in advance

assassingod
10-03-2003, 05:41 AM
$pop1 = $DB_site->query('SELECT title,threadid,views,lastpost FROM thread ORDER BY lastpost DESC LIMIT 1');
while ($pop1top = mysql_fetch_array($pop1)):
++$pop1topnbsp;
$pop1title .= "<a href=showthread.php?s=$session[sessionhash]&threadid=$pop1top[threadid]>$pop1top[title]</a>";
$pop1views .= "$pop1top[views]";


Try that.

mcyates
10-03-2003, 06:41 AM
nope that didn't work, just didn't show anything. Thanks for the try though. Is there anuthing else that may work.

assassingod
10-03-2003, 01:34 PM
Try


$pop1 = $DB_site->query('SELECT title,threadid,views,dateline FROM thread ORDER BY dateline DESC LIMIT 1');
while ($pop1top = mysql_fetch_array($pop1)):
++$pop1topnbsp;
$pop1title .= "<a href=showthread.php?s=$session[sessionhash]&threadid=$pop1top[threadid]>$pop1top[title]</a>";
$pop1views .= "$pop1top[views]";

mcyates
10-03-2003, 04:33 PM
nope that didn't work either. But thanks again. Anyone else know?

assassingod
10-03-2003, 04:40 PM
It should work. Also, why are you LIMITing to 1?

Use this, its templated as well so it's much better:

$latestthread=$DB_site->query("SELECT title,threadid,lastpost FROM thread ORDER BY lastpost LIMIT 5");
while ($latestthread=$DB_site->fetch_array($latestthreads)) {
eval("\$fh_lthreads .= \"".gettemplate('forumhome_latestthreads)."\";");
}


Then creat a template called forumhome_latestthreads with the contents:


<a href="showthread.php?s=$session[sessionhash]&threadid=$latestthreads[threadid]">$latestthreads[title]</a>


Then use '$fh_lthreads' anywhere you want

That SHOULD work.

mcyates
10-04-2003, 10:43 AM
that creates a parse error

sabret00the
10-04-2003, 11:46 AM
that's relatively easy, suprised you didn't get that assassin, oh well, heres teh fix


// Top 10 Thread Replys// Top 1 Most Popular Thread$pop1 = $DB_site->query('SELECT title,threadid,views FROM thread ORDER BY views DESC LIMIT 1');while ($pop1top = mysql_fetch_array($pop1)): ++$pop1topnbsp; $pop1title .= "<a href=showthread.php?s=$session[sessionhash]&goto=lastpost&threadid=$pop1top[threadid]>$pop1top[title]</a>"; $pop1views .= "$pop1top[views]";sorted

sabret00the
10-04-2003, 01:27 PM
awwww vb3 messed up the line breakes, but it's easy enough to read, i only changed one line, that's the one with the html in it

mcyates
10-04-2003, 01:48 PM
thanks, i'll give it a try in 15 minutes

mcyates
10-04-2003, 01:57 PM
nope parse error i am running version 2.3.2

mcyates
10-04-2003, 02:09 PM
when i sorted it out, well once i changed the html. The thread title doesn't show up. Weird look

mcyates
10-04-2003, 02:10 PM
here

mcyates
10-04-2003, 02:10 PM
the above is from using your modified code:


// Top 10 Thread Replys
// Top 1 Most Popular Thread
$pop1 = $DB_site->query('SELECT title,threadid,views FROM thread ORDER BY views DESC LIMIT 1');
while ($pop1top = mysql_fetch_array($pop1)):
++$pop1topnbsp;
$pop1title .= "<a href=showthread.php?s=$session[sessionhash]&goto=lastpost&threadid=$pop1top[threadid]>$pop1top[title]</a>"; $pop1views .= "$pop1top[views]";