Version: , by Brad
Developer Last Online: Nov 2023
Version: Unknown
Rating:
Released: 10-17-2002
Last Update: Never
Installs: 0
No support by the author.
Basicly im trying to make some code that will send you to the frist post of a thread insted of the lastest via the index.php page. The problem is my code is pulling random threads, i know the error is in the block of code below but im not the best in the world at php (templates are my thing ) so can someone point out the error for me?.
PHP Code:
// goto last thread
if ($goto=="lastthread") {
if (isset($threadid) and $threadid!=0) {
$threadid = verifyid("thread",$threadid);
if ($thread=$DB_site->query_first("SELECT threadid FROM thread WHERE forumid IN (0$forumslist) AND visible=1 ORDER BY threadid DESC LIMIT 1")) {
header("Location: showthread.php?s=$session[sessionhash]&threadid=$thread[threadid]");
exit;
}
}
if (isset($forumid) and $forumid!=0) {
$foruminfo=verifyid("forum",$forumid,1,1);
$forumid=$foruminfo['forumid'];
$forumslist = "";
$getchildforums=$DB_site->query("SELECT forumid,parentlist FROM forum WHERE INSTR(CONCAT(',',parentlist,','),',$forumid,')>0");
while ($getchildforum=$DB_site->fetch_array($getchildforums)) {
if ($getchildforum[forumid]==$forumid) {
$parentlist=$getchildforum[parentlist];
}
$forumslist.=",$getchildforum[forumid]";
}
$thread=$DB_site->query_first("SELECT threadid FROM thread WHERE forumid IN (0$forumslist) AND visible=1 AND (sticky=1 OR sticky=0) ORDER BY threadid DESC LIMIT 1");
if ($thread=$DB_site->query_first("SELECT threadid FROM thread WHERE forumid IN (0$forumslist) AND visible=1 ORDER BY threadid DESC LIMIT 1")) {
header("Location: showthread.php?s=$session[sessionhash]&threadid=$thread[threadid]");
exit;
}
}
}
Show Your Support
This modification may not be copied, reproduced or published elsewhere without author's permission.
hmm, very faszinating, but i can't see the logic of some points
try this block instead:
PHP Code:
// goto last thread
if ($goto=="lastthread") {
if (isset($threadid) and $threadid!=0) {
$threadid = verifyid("thread",$threadid);
header("Location: showthread.php?s=$session[sessionhash]&threadid=$threadid");
exit;
}
if (isset($forumid) and $forumid!=0) {
$foruminfo=verifyid("forum",$forumid,1,1);
$forumid=$foruminfo['forumid'];
$forumslist = "";
$getchildforums=$DB_site->query("SELECT forumid,parentlist FROM forum WHERE INSTR(CONCAT(',',parentlist,','),',$forumid,')>0");
while ($getchildforum=$DB_site->fetch_array($getchildforums)) {
if ($getchildforum[forumid]==$forumid) {
$parentlist=$getchildforum[parentlist];
}
$forumslist.=",$getchildforum[forumid]";
}
if ($thread=$DB_site->query_first("SELECT threadid FROM thread WHERE forumid IN (0$forumslist) AND visible=1 ORDER BY lastpost DESC LIMIT 1")) {
header("Location: showthread.php?s=$session[sessionhash]&threadid=$thread[threadid]");
exit;
}
}
}