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

Reply
 
Thread Tools Display Modes
  #1  
Old 03-02-2006, 07:49 AM
Logikos Logikos is offline
 
Join Date: Jan 2003
Posts: 2,924
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default category tree bit Help

I would like to create a simple category tree using the vbulletin templates. Seems though I can't add a bit template to a bit template which would both be part of the main template. I'll try to explaine better...

Database Setup for table Categories with the following fields:
id, title, description, and display order. I have 3 Categories inserted that I'm testing with.

Category 1
Category 2
Category 3

I have another table setup called items with the following fields:
id, catid, title, description, and display order. I have 6 items inserted that I'm testing with.

Item 1 (catid1)
Item 2 (catid1)
Item 3 (catid1)
Item 4 (catid2)
Item 5 (catid2)
Item 6 (catid3)

Now with this code it would work right obvisoulsy because I'm just echoing:
PHP Code:
$var1data $db->query_read("
        SELECT *
        FROM " 
TABLE_PREFIX "category
"
);

while (
$var1 $db->fetch_array($var1data))
{
        echo 
"<b>" $var1['title'] . "</b><br />";

        
$var2data $db->query_read("
                SELECT *
                FROM " 
TABLE_PREFIX "items
                WHERE catid = 
$var1[id]
        "
);

        while (
$var2 $db->fetch_array($var2data))
        {
                echo 
"----<i>" $var2['title'] . "</i><br />";
        }

What will display the following:

Category 1
------ Item 1
------ Item 2
------ Item 3
Category 2
------ Item 4
------ Item 5
Category 3
------ Item 6

Though adding this to the templates like that would mean using 3 templates. A main template that will hold the main code and the category bit variable, the category bit template, which would hold the item bit variable, and the item bit template that would hold the item info. Like so...

PHP Code:
$var1data $db->query_read("
        SELECT *
        FROM " 
TABLE_PREFIX "category
"
);

while (
$var1 $db->fetch_array($var1data))
{
        eval(
'$Categories .= "' fetch_template('categories') . '";');

        
$var2data $db->query_read("
                SELECT *
                FROM " 
TABLE_PREFIX "items
                WHERE catid = 
$var1[id]
        "
);

        while (
$var2 $db->fetch_array($var2data))
        {
                eval(
'$Items .= "' fetch_template('items') . '";');
        }
}

eval(
'print_output("' fetch_template('maintemplate') . '");'); 
But that won't work because I'm adding a bit variable inside another templatebit. Anyone know what can be done to do something like this. The screenshot it what I'm trying to get out of this. Thanks!!


I think using the cache system would be a better approach
Attached Images
File Type: gif catSS.gif (2.7 KB, 0 views)
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 02:11 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.03485 seconds
  • Memory Usage 2,241KB
  • Queries Executed 12 (?)
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
  • (2)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_attachment
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)showthread_list
  • (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_threadedmode.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_threaded
  • showthread_threaded_construct_link
  • 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_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete