Welcome, see The Perl Monks Guide to the Monastery, see How do I post a question effectively?, Where should I post X?

Your updated code does not compile :)

If you look at the docs for XML::RSS you can see an example of accessing items . See also References quick reference

#!/usr/bin/perl -- use constant DEBUG => !!( 0 || $ENV{PERL_DEBUG_MYAPPNAME} ); use CGI::Carp qw( fatalsToBrowser ); use CGI; # to avoid those pesky 500 errors BEGIN { CGI::Carp::set_message( sub { print "<h1>something broke, we know what it is, thank you, + try again later</h1>\n"; if (DEBUG) { print '<p>', CGI->escapeHTML(@_), '</p>'; } } ); } ## end BEGIN use strict; use warnings; use Data::Dumper (); use LWP::Simple qw( get ); use XML::RSS; Main( @ARGV ); exit( 0 ); sub Main { #~ return DebugCGI(); # generic, env.cgi return RSSMoo('file:animals.rss.xml'); # for testing #~ return RSSMoo("http://feeds.feedburner.com/animals"); } ## end sub Main sub RSSMoo { my $url = shift; my $rss_content = get($url); my $cgi = CGI->new; my $feed = XML::RSS->new->parse($rss_content); binmode STDOUT, ":encoding(UTF-8)"; $cgi->charset('UTF-8'); print $cgi->header, $cgi->start_html; for my $item ( @{ $feed->{items} } ) { print '<div style="border: 2px solid black ;">'; print FudgeA( $item ); print '</div>'; } print '<div style="white-space: pre; overflow: scroll; height: 300 +px;">', $cgi->escapeHTML( DD( $feed ) ), '</div><hr><hr><hr>'; print $cgi->end_html; } ## end sub RSSMoo sub FudgeA { my $iref = shift; return '<p>'.CGI->a( { -href => $iref->{link}, }, CGI->escapeHTML( + $iref->{title} ) ).'</p>'; } sub FudgeB { my $iref = shift; return CGI->new( $iref )->Dump . '<hr>'; } sub FudgeC { my $iref = shift; my $ret = '<div>'; $ret .= '<p>' . CGI->escapeHTML( $iref->{title} ) . '</p>'; while( my( $k, $v ) = each %$iref ){ $ret .= "<p><strong>"; $ret .= CGI->escapeHTML( $k ); $ret .= "</strong> "; $ret .= CGI->escapeHTML( $v ); $ret .= '</p>'; } $ret .= '</div>'; return $ret; } sub DebugCGI { my $cgi = CGI->new; print $cgi->header(); # Write HTTP header print $cgi->start_html, $cgi->b( rand time, ' ', scalar gmtime ), '<table border="1" width="%100"><tr><td>', $cgi->Dump, '</td>', '<td><div style="white-space: pre-wrap; overflow: scroll;">', $cgi->escapeHTML( DD($cgi) ), '</div></td></tr></table>', CGI->new( \%ENV )->Dump, $cgi->end_html; } ## end sub DebugCGI sub DD { scalar Data::Dumper->new( \@_ )->Indent(1)->Useqq(1)->Dump; }

In reply to Re^3: Trying to get an RSS to display by Anonymous Monk
in thread Trying to get an RSS to display by Henglong

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.