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 06-18-2004, 12:05 AM
DiscussAnything DiscussAnything is offline
 
Join Date: Jan 2002
Posts: 131
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default 5 latest articles

I have the article hack (vb2) on my site, and wanted to include '5 latest articles' on the vbhome lite page. I can't seem to get it to work though, and was hoping someone could tell me what I'm missing.

This is the PHP I added to the index.php. Its based on the '10 latest threads':

PHP Code:
// +--------------------------------------------------------------
// | Latest KB Articles
// +--------------------------------------------------------------
$kbheader '';
$kbbits '';
{
  eval( 
'$kbheader = "' gettemplate'home_kbheader' ) . '";' );

  
$kbart $DB_site->query("
    SELECT artid, categoryid,date, title, hits, author
    FROM vbArticles_content
    WHERE categoryid != 7 AND categoryid != 8 
    ORDER BY artid DESC LIMIT 5
  "
);
  while ( 
$kbart $DB_site->fetch_array$kbart ) )
  {
      eval( 
'$kbbits .= "' gettemplate'home_kbbit' ) . '";' );
  }
  
$DB_site->free_result$kbart );
  unset( 
$kbart );

As you can tell this uses 2 templates, a header and a bit that displays the info for the article. The query works, I've tested it and it gives me the 5 latest additions, leaving out anything from category 7 or 8.

The index however only gives me the single latest addition, not 5. The kbbit template is:

PHP Code:
<tr class="clfirst">
<
td><img src="{imageshome}/arrow.gif" alt="" class="imgborder" height="7" width="7" border="0"/><a href="$bburl/articles.php?action=viewarticle&artid=$kbart[artid]"><span class="txtbold">$kbart[title]</span></a><br />
Added$kbart[date]<br>
Author$kbart[author]</a><br>
Views$kbart[hits]</td>
</
tr
Nothing I can see that's wrong here. So why doesn't it display 5? The query works, the template works, but together it doesn't...

help?
Reply With Quote
  #2  
Old 06-18-2004, 03:33 AM
cinq's Avatar
cinq cinq is offline
 
Join Date: Oct 2002
Posts: 1,398
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

what are the 2 opening brackets ( one just below kkbits=''; and the matching one at the end ) for ?
Reply With Quote
  #3  
Old 06-18-2004, 01:08 PM
DiscussAnything DiscussAnything is offline
 
Join Date: Jan 2002
Posts: 131
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I'm not sure, but that's how the vbhomelite latest threads seem to work. I just copied that piece of code and changed the code to work with the articles
Reply With Quote
  #4  
Old 06-18-2004, 01:13 PM
DiscussAnything DiscussAnything is offline
 
Join Date: Jan 2002
Posts: 131
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Turns out the latest threads had an IF statement there. So i removed those brackets and it still works, but still only 1 article, instead of 5
Reply With Quote
  #5  
Old 06-18-2004, 01:27 PM
Dean C's Avatar
Dean C Dean C is offline
 
Join Date: Jan 2002
Location: England
Posts: 9,071
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Perhaps its because you only have one article which matches this criteria. Run the query in phpmyadmin to see how many results it returns.

Also do you have the $kbits variable in the home_kheader?
Reply With Quote
  #6  
Old 06-18-2004, 02:30 PM
cinq's Avatar
cinq cinq is offline
 
Join Date: Oct 2002
Posts: 1,398
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok just a shot in the dark, but try this for the php code:
Not too certain if it would help any though.

PHP Code:
// +-------------------------------------------------------------- 
// | Latest KB Articles 
// +-------------------------------------------------------------- 


  
eval( '$kbheader = "' gettemplate'home_kbheader' ) . '";' ); 

  
$kbartquery $DB_site->query(
    SELECT artid, categoryid,date, title, hits, author 
    FROM vbArticles_content 
    WHERE categoryid != 7 AND categoryid != 8 
    ORDER BY artid DESC LIMIT 5 
  "
); 
if(
$DB_site->num_rows($kbartquery)) { 
  while (
$kbart=$DB_site->fetch_array($kbartquery)) 
  { 
      eval( 
'$kbbits .= "' gettemplate'home_kbbit' ) . '";' ); 
  } 

Also if possible, post your kheader template ( though i don't think problem's there )
Reply With Quote
  #7  
Old 06-18-2004, 02:39 PM
Dean C's Avatar
Dean C Dean C is offline
 
Join Date: Jan 2002
Location: England
Posts: 9,071
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Well I think the problem is if you have $kbits in the home_kbheader template. if so just move the:

PHP Code:
eval( '$kbheader = "' gettemplate'home_kbheader' ) . '";' ); 
line to the bottom instead of top
Reply With Quote
  #8  
Old 06-18-2004, 05:47 PM
DiscussAnything DiscussAnything is offline
 
Join Date: Jan 2002
Posts: 131
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

5 - I owe you one, that worked perfectly! Shows once again that I should stay way from php code myself

Only way you could make me happier is if I could get my hands on the link directory with subsection code. I think i remember you mentioning you had that...


Dean, haven't tried your suggestion but I'm sure it'd work too, thanks
Reply With Quote
  #9  
Old 06-18-2004, 06:00 PM
Dean C's Avatar
Dean C Dean C is offline
 
Join Date: Jan 2002
Location: England
Posts: 9,071
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Good luck with whatever you're coding
Reply With Quote
  #10  
Old 06-19-2004, 01:00 AM
cinq's Avatar
cinq cinq is offline
 
Join Date: Oct 2002
Posts: 1,398
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

No problem, glad I could help
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 06:54 PM.


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.09339 seconds
  • Memory Usage 2,264KB
  • Queries Executed 11 (?)
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
  • (4)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (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_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
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete