View Single Post
  #6  
Old 01-22-2012, 06:00 PM
Varsh's Avatar
Varsh Varsh is offline
 
Join Date: Aug 2006
Location: UK
Posts: 98
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Aaah I've been looking for this, I'm also on the same lines as Triky was with duplicating the results, not sure how to solve it even though you said that I need to include the output before re-using the code again.

What I have so far is this:
PHP Code:
<?php
$rss2_art_file 
'http://localhost:41648/forums/external.php?type=RSS2&forumids=8';
$rss2_games_file 'http://localhost:41648/forums/external.php?type=RSS2&forumids=5';

$is_item false;
$tag '';
$title '';
$description '';
$link '';
$date '';
$author '';

function 
character_data($parser$data) {
    global 
$is_item$tag$title$description$link$date$author;
    
    if (
$is_item) {
        switch (
$tag) {
            case 
"TITLE":
                
$title .= $data;
                break;
            case 
"DESCRIPTION":
                
$description .= $data;
                break;
            case 
"LINK":
                
$link .= $data;
                break;
            case 
"PUBDATE":
                
$date .= $data;
                break;
            case 
"AUTHOR":
                
$author .= $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$date$author$rss2_art$rss2_games;
    
    if (
$name == "ITEM") {
        
$rss2_art .= "<b><a href='" trim($link) . "'>" htmlspecialchars(trim($title)) . "</a></b> - " htmlspecialchars(trim($date)) . "<br>";
        
$rss2_games .= "<b><a href='" trim($link) . "'>" htmlspecialchars(trim($title)) . "</a></b> - " htmlspecialchars(trim($date)) . "<br>";
        
$title "";
        
$description "";
        
$link "";
        
$date "";
        
$author "";
        
$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_art fopen($rss2_art_file,"r");
$fp_games fopen($rss2_games_file,"r");

while (
$data fread($fp_art4096)) {
    
xml_parse($parser$datafeof($fp_art));
}
while (
$data fread($fp_games4096)) {
    
xml_parse($parser$datafeof($fp_games));
}

fclose($fp_art);
fclose($fp_games);
xml_parser_free($parser);
?>
That is in a separate file required once into the page and have it echoed out, but like Triky had, I have a duplicate.
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01198 seconds
  • Memory Usage 1,817KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_php
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)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_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.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
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • 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
  • showpost_complete