vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 General Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=111)
-   -   RSS Feed Question (https://vborg.vbsupport.ru/showthread.php?t=205966)

darknexxus 02-20-2009 02:34 AM

RSS Feed Question
 
I want to link two RSS feeds, both from Vbulletin systems on different domains to one page on another domain.

PHP Code:


 

<?php

// ############################ BEGIN vBulletin Code ###############################

// ######################################################

// ## configuration

// ##

// ## $rss_file= 'http://www.vbulletin.com/forum/external.php?type=rss';

// ## Adjust this variable to point to your RSS feed

 

$rss_file 'http://forums.domain.com/external.php?type=rss';

 

// ## configuration end

// ######################################################

// ## Do not touch code below!

$is_item false;

$tag '';

$title '';

$description '';

$link '';

 

function 
character_data($parser$data)

{

    global 
$is_item$tag$title$description$link;

    if (
$is_item)

    {

        switch (
$tag)

        {

            case 
"TITLE":

            
$title .= nl2br($data);

            break;

            case 
"DESCRIPTION":

            
$description .= nl2br($data);

 

            break;

            case 
"LINK":

            
$link .= $data;

            break;

        }

    }

}

 

function 
begin_element($parser$name)

{

    global 
$is_item$tag;

    if (
$is_item)

    {

        
$tag $name;

    }

    else if (
$name == "ITEM")

    {

        
$is_item true;

    }

}

 

function 
end_element($parser$name)

{

    global 
$is_item$title$description$link$rss_output;

    if (
$name == "ITEM")

    {

 
$link str_ireplace("http://www.domain.com/forums""http://forums.domain.com"$link);

        
$rss_output .= "<p><a href='" trim($link) . "'>" trim($title) . "</a>" trim($description) . "</p>";

 
$rss_output str_replace("<br /></a><br />""</a><br />"$rss_output);

        
$title "";

        
$description "";

        
$link "";

        
$is_item false;

    }

}

 

 

$parser xml_parser_create();

 

xml_set_element_handler($parser"begin_element""end_element");

xml_set_character_data_handler($parser"character_data");

$fp fopen($rss_file,"r");

 

while (
$data fread($fp4096))

{

    
xml_parse($parser$datafeof($fp));        

}

 

fclose($fp);

xml_parser_free($parser);

// ####

// ############################## END vBulletin Code ###############################

?>



That's the code I'm using. I call the file using two separate files (threads.php and forums.php) with only the above code in them. I then use
PHP Code:

<?php echo $rss_output?>

to call the script and display the contents.



The above code works, but only for one domain. Try using it on two and I get fatal call errors. I tried changing rss to css in one of the files and changed the call code $css_output. I then got the error Cannot redeclare character_data() (previously declared.



Is there a way to include both RSS with this script on the same page?



Thanks in advance

darknexxus 02-22-2009 06:48 AM

Seems I stumped everyone.
:cool:

Lynne 02-22-2009 03:53 PM

You are showing us the code that worked for you. It would help to see the code that doesn't work for you so we can see what might be wrong.

Also, you say you are calling this at the top of the forum and thread pages - do you have an image to show what it is you are trying to accomplish?


All times are GMT. The time now is 10:15 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.01081 seconds
  • Memory Usage 1,741KB
  • 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
  • (3)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