vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 General Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=111)
-   -   How do I display my titles correctly? (https://vborg.vbsupport.ru/showthread.php?t=122433)

davidw 07-28-2006 09:01 PM

How do I display my titles correctly?
 
Say for example, I am pulling 3 article from 2 forums.
I am currently using this to print articles of a couple different forums.
PHP Code:

if (!isset($title))
{
    eval(
'$article .= "' fetch_template('title') . '";');
}

if (isset(
$article))
{
    eval(
'$article .= "' fetch_template('article') . '";');


The problem (obviously) is that it only displays the title to the first forum set. Instead of doing this:

Forum title
thread
thread
thread

Forum title
thread
thread
thread

It obviously does this:

Forum title
thread
thread
thread

thread
thread
thread

What would I need to change this to in order to make this work correctly?

davidw 07-30-2006 03:39 PM

bump

Marco van Herwaarden 07-30-2006 03:44 PM

You would really need to show more of your code to answer this.

davidw 07-30-2006 04:27 PM

Ok, Here's a bigger, more practical chunk...
PHP Code:

$getnews $db->query_read("
    SELECT t.threadid, t.title, t.lastpost, t.forumid, t.open, t.replycount, t.postusername, t.postuserid, t.lastposter, t.dateline, t.views, t.visible, t.firstpostid, f.title AS forumtitle, post.pagetext AS preview 
    FROM " 
TABLE_PREFIX "forum f 
    INNER JOIN " 
TABLE_PREFIX "thread t ON t.forumid = f.forumid AND t.visible = 1 AND " $desclimit " > ( SELECT count(" $desclimit ") FROM " TABLE_PREFIX "thread WHERE forumid = f.forumid AND visible = 1 AND dateline > t.dateline )
    LEFT OUTER JOIN " 
TABLE_PREFIX "post AS post ON post.postid = t.firstpostid WHERE t.forumid IN (" implode(','$myforumid) . ") 
    ORDER BY field(f.forumid," 
implode(','$myforumid) . "), t.dateline desc
"
); 

while(
$news $db->fetch_array($getnews))
{
    
$news['title']            = preg_replace('/\<[a-zA-Z0-9 \&lt;\<\,\&gt;\>\.\?\/\:\;\~\"\`\!\@\#\$\%\^\&\*\(\)\_\-\+\=]*\>/'''$news['title']);
    
$news['title']            = fetch_trimmed_title(fetch_censored_text(unhtmlspecialchars($news['title'])), $titlelen);
    
$news['forumtitle']        = stripslashes($news['forumtitle']);
    
$news['date']            = vbdate($vbulletin->options['dateformat'], $news['dateline']);
    
$news['time']            = vbdate($vbulletin->options['timeformat'], $news['dateline']);
    
$news['replycount']        = vb_number_format($news['replycount']);
    
$news['views']            = vb_number_format($news['views']);
    
$news['postusername']    = $news['postusername'];
    
$news['lastposter']        = $news['lastposter'];
    
$news['preview']        = preg_replace('/\<[a-zA-Z0-9 \&lt;\<\,\&gt;\>\.\?\/\:\;\~\"\`\!\@\#\$\%\^\&\*\(\)\_\-\+\=]*\>/'''$news['preview']);    
    
$news['pagetext']        = htmlspecialchars_uni(strip_bbcode(fetch_censored_text(substr($news['preview'], 0$charlimit))));

    
$news['endoftextless']    = '... <br />&nbsp;<font size=2><a href="showthread.php?t='$news['threadid'] .'" title="'$news['preview'] .'" target="blank">[Read more here]</a></font>';
    
$news['endoftextmore']    = '<br />&nbsp;<font size=2><a href="showthread.php?t='$news['threadid'] .'" title="'$news['preview'] .'" target="blank">[Click here for source]</a></font>';
    
$endoftext = (strlen($news['pagetext']) > $charlimit) ? $news['endoftextless'] : $news['endoftextmore'];

    if (!isset(
$vbnewscms_articlebit))
    {
        eval(
'$vbnewscms_articlebit .= "' fetch_template('vbnewscms_sectionhead') . '";');
    }
 
    if (isset(
$vbnewscms_articlebit))
    {
        eval(
'$vbnewscms_articlebit .= "' fetch_template('vbnewscms_articlebit') . '";');
    }
    
    if (!isset(
$vbnewscms_sectionend))
    {
        eval(
'$vbnewscms_sectionend .= "' fetch_template('vbnewscms_sectionend') . '";');
    }


It still has 3 other bugs aside from this one, but this is the worst offender.

davidw 07-31-2006 05:55 PM

I'm just wondering if a switch would work

davidw 08-01-2006 06:53 PM

bump

Marco van Herwaarden 08-04-2006 12:38 PM

i would use a 'forumbit' template, to hold all the threads for that forum, and then evaluate that upon a change of forumid (you already are ordering it by forumid).

Freesteyelz 08-05-2006 03:39 AM

I think I know what this is for... :D

davidw 08-05-2006 10:42 AM

Yeah - and this is the only problem left. After this... 2-3 small bugs that are easy to fix (one is resident on fixing this one :P).

I had an idea though, If I could find a way to separate/isolate out one (any) forum from the query, I can fix the problem. I am not sure how to do this though. Marco gave me that idea above. Although, I'm already using an "articlebit" template (I could call it forumbit) that serves pretty much the same purpose.


All times are GMT. The time now is 03:18 PM.

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.01054 seconds
  • Memory Usage 1,761KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (2)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (9)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete