Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 12-02-2007, 12:15 PM
Parker Clack Parker Clack is offline
 
Join Date: Oct 2001
Posts: 351
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Help with call to database in postbit hook

I am trying to get a total of posts from the post table so that I can include that in my postbit template.

I have tried using the following in the postbit_start hook.

Code:
$postcount=$db->query_first("SELECT COUNT(*) AS posts FROM post WHERE postid AND post.visible=1");
$totalposts=$postcount[posts];
Which gets me an undefined call error in the postbit.php file.

Any ideas how to make this work?

Thanks,
Parker
Reply With Quote
  #2  
Old 12-02-2007, 03:13 PM
TigerWare TigerWare is offline
 
Join Date: Feb 2007
Location: England, UK
Posts: 282
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Parker Clack View Post
Code:
$postcount=$db->query_first("SELECT COUNT(*) AS posts FROM post WHERE postid AND post.visible=1");
$totalposts=$postcount[posts];
Which gets me an undefined call error in the postbit.php file.

Any ideas how to make this work?
Your query returns a number not an array.
Reply With Quote
  #3  
Old 12-02-2007, 04:51 PM
Opserty Opserty is offline
 
Join Date: Apr 2007
Posts: 4,103
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Your query returns a number not an array.
No it doesn't...at least last time I tried something similar it didn't

Are you sure you want to run that query on every postbit?

Best would be to run the query say at the start of the page (e.g. showthread_start) and then use the variable in the postbit. (Note: You may need to use the $_GLOBALS['postcount']['posts'] variable to access the data)
Reply With Quote
  #4  
Old 12-02-2007, 04:53 PM
Dean C's Avatar
Dean C Dean C is offline
 
Join Date: Jan 2002
Location: England
Posts: 9,071
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

$thread[replycount] or $threadinfo[replycount]

One of those works, I can't remember which offhand. You don't need to run any queries.
Reply With Quote
  #5  
Old 12-02-2007, 04:57 PM
Opserty Opserty is offline
 
Join Date: Apr 2007
Posts: 4,103
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hang on...what postcount are you trying to get? The total forum postcount or the postcount for the thread?

Your SQL doesn't make much sense.
[sql]SELECT COUNT(*) AS posts FROM post WHERE postid AND post.visible=1[/sql]


If its the number of replies to the thread then the above post is correct.
Reply With Quote
  #6  
Old 12-02-2007, 04:58 PM
TigerWare TigerWare is offline
 
Join Date: Feb 2007
Location: England, UK
Posts: 282
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Opserty View Post
No it doesn't
That's a joke right?

--------------- Added [DATE]1196622101[/DATE] at [TIME]1196622101[/TIME] ---------------

Quote:
Originally Posted by TigerWare View Post
That's a joke right?
Nope, guess not, I just checked the madness from the API. Excuse me whilst I go and eat my monitor.
Reply With Quote
  #7  
Old 12-02-2007, 09:49 PM
Parker Clack Parker Clack is offline
 
Join Date: Oct 2001
Posts: 351
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It is to get the number of replies in a thread. Let say you have a thread with 10 total posts. I want to post the $totalpost count in that thread so it will say Post 1 of 10 or 5 of 10, etc.

Thanks,
Parker
Reply With Quote
  #8  
Old 12-03-2007, 05:21 AM
Dean C's Avatar
Dean C Dean C is offline
 
Join Date: Jan 2002
Location: England
Posts: 9,071
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

$thread[replycount] then No queries necessary
Reply With Quote
  #9  
Old 12-03-2007, 12:56 PM
Parker Clack Parker Clack is offline
 
Join Date: Oct 2001
Posts: 351
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Dean:

Thanks. To make the count correct though I created a hook in postbit_display_start and
used $postcount=$thread[replycount]+1;
Otherwise if there are 15 posts the 15th post shows up as Post 14 of 15.

Thanks again.
Reply With Quote
  #10  
Old 12-04-2007, 05:23 AM
Dean C's Avatar
Dean C Dean C is offline
 
Join Date: Jan 2002
Location: England
Posts: 9,071
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Better than running a query for every post though
Reply With Quote
Reply


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 07:13 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03967 seconds
  • Memory Usage 2,249KB
  • Queries Executed 13 (?)
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)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (2)bbcode_code
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)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
  • (10)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_postinfo_query
  • fetch_postinfo
  • 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