Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > General > Member Archives

Reply
 
Thread Tools
latest threads in forumdisplay.php? Details »»
latest threads in forumdisplay.php?
Version: , by TECK TECK is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Version: Unknown Rating:
Released: 05-07-2002 Last Update: Never Installs: 0
 
No support by the author.

i want to show the latest 10 threads, pulled from all forums in forumdisplay.php. i have this code:
Code:
// get latest threads
$forums=$DB_site->query("SELECT * FROM forum WHERE active=1");
$forumids='forumid IN (0';
while ($forum=$DB_site->fetch_array($forums)) {
  $getperms=getpermissions($forum['forumid']);
  if ($getperms[canview]) {
    $forumids .= "," . $forum['forumid'];
  }
}
$forumids.=')';

unset($forum);

$getthreads=$DB_site->query("SELECT * FROM thread WHERE $forumids AND visible=1 ORDER BY lastpost DESC LIMIT 10");
while ($lastthread=$DB_site->fetch_array($getthreads)) {
  $threadid=$lastthread[threadid];
  $titleextra='';
  if (strlen($lastthread[title])>32) {
    $titleextra="...";
  }
  $threadtitle=substr($lastthread[title], 0, 29);
}

eval("\$lastthreadbits .= \"".gettemplate('home_threadbits')."\";");
everything is working fine... hmm the problem is that it's making me jump from 21 to 40!!!! queries. is there a way to cache somehow those pesky queries? thanks for your help.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #2  
Old 05-07-2002, 11:17 AM
E's Avatar
E E is offline
 
Join Date: Mar 2002
Location: Fieldale Virginia
Posts: 421
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

i dont see 19 queries... only 4
Reply With Quote
  #3  
Old 05-07-2002, 12:07 PM
Admin's Avatar
Admin Admin is offline
Coder
 
Join Date: Oct 2023
Location: Server
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

getpermissions() = lots of queries, and shouldn't be used in a loop I believe.
Reply With Quote
  #4  
Old 05-07-2002, 05:33 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

is the perms that add a query for each thread... you have an idea how it would be the code to pull it out of the loop?
i honestly dont know. as you know firefly, i look at the VB script code and try to make something similar. thare are certain things i do not manage yet. let me know if you could write the loop part here for me. thanks.
Reply With Quote
  #5  
Old 05-07-2002, 05:49 PM
Scott MacVicar Scott MacVicar is offline
 
Join Date: Oct 2001
Location: Glasgow, Scotland
Posts: 1,199
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

try this

PHP Code:
//perms
$fperm=$DB_site->query("SELECT canview,forumid FROM forumpermission WHERE usergroupid='$bbuserinfo[usergroupid]'");
while(
$fperms $DB_site->fetch_array($fperm)) {
  
$perms["$fperms[forumid]"] = $fperms;
}
$DB_site->free_result($fperm);
unset(
$fperms);
//forums
$forum=$DB_site->query("SELECT forumid FROM forum");
while (
$forums=$DB_site->fetch_array($forum)) {
  if(
$fperms["$forums[forumid]"]["canview"] == 1) {
    
$forumperms[]=$forums["forumid"];
  }
  else {
    
$forumperms[]=$forums["forumid"];
  }
}
$DB_site->free_result($forum);
unset(
$forums);

if(!empty(
$forumperms)) {
  
$forumperms='AND forumid='.implode(' OR forumid=',$forumperms);
}
$getthreads=$DB_site->query("SELECT * FROM thread WHERE open='1' AND open<>10 $forumperms ORDER BY lastpost DESC LIMIT 10"); 
you should add open<>10 in the query as that is moved threads which you don't want, as it will pick up the moved thread plus the redirect left in the old forum.
Reply With Quote
  #6  
Old 05-07-2002, 08:05 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

thanks alot scott.

now, can i pm you about an issue that i develloped with a different file? i cannot post the contents of the file because it contains 60% VB script code. i already asked firefly for help. just leting you know that is nothing related to this thread here. i ask this because maybe firefly is busy and i dont want to pm every single one of you every day.

if any of you is willing to take a look at the file (firefly, ppn or zzed), please post an answer here and i will attach the file in your pm. is about a misterious query that is added every time i refresh the page. originally it starts with 21 queries on the page, when i login. as soon as i refresh, it adds a new query, for a total of 22. i cant seem to find where it must be unset the forgotten variable, in that file.

one more time, thanks.
Reply With Quote
  #7  
Old 05-07-2002, 08:48 PM
KuraFire's Avatar
KuraFire KuraFire is offline
 
Join Date: Oct 2001
Location: inside vB3's .php
Posts: 1,245
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Doesn't work at all for me, PPN.

Using your code exactly except for the last query line (mine is: $threadsql = $DB_site->query("SELECT lastposter, threadid, title, replycount FROM thread WHERE open<>10 $forumperms ORDER BY lastpost DESC LIMIT 69"); ) this just didn't work. I made a thread in my admin&mods forum, but a normal member still sees the thread listed while viewing my newsportal.
Reply With Quote
  #8  
Old 05-07-2002, 09:03 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by nakkid
if any of you is willing to take a look at the file (firefly, ppn or zzed), please post an answer here and i will attach the file in your pm. is about a misterious query that is added every time i refresh the page. originally it starts with 21 queries on the page, when i login. as soon as i refresh, it adds a new query, for a total of 22.
i found it! thanks alot guys.
Reply With Quote
  #9  
Old 05-07-2002, 09:19 PM
Scott MacVicar Scott MacVicar is offline
 
Join Date: Oct 2001
Location: Glasgow, Scotland
Posts: 1,199
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

does your newsportal include global.php and load the $bbuserinfo array?
Reply With Quote
  #10  
Old 05-07-2002, 09:51 PM
KuraFire's Avatar
KuraFire KuraFire is offline
 
Join Date: Oct 2001
Location: inside vB3's .php
Posts: 1,245
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

it includes global.php but I have nothing added myself pertaining to a $bbuserinfo array or anything like that.
Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 04:39 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05820 seconds
  • Memory Usage 2,298KB
  • Queries Executed 23 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)bbcode_code
  • (1)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (10)post_thanks_box
  • (10)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (10)post_thanks_postbit_info
  • (9)postbit
  • (10)postbit_onlinestatus
  • (10)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete