Ciao ragazzi ho un problemino con il parser xml di una pagina php....
In effetti io ho una pagina php che mi genera un xml per un rss(rss.php).
la inserisco nel parser...
e non mi restituisce nulla se uso il path interno al server cartella/rss.php
mentre con:
http://www.miosito.it/cartella/rss.php funziona perchè come se il browser eseguisse la pagina.
Ecco come faccio il parser e la pagina php ha imposto un header xml.
Codice PHP:
$filename0="rss.php";
$item_counter0 = 0;
$item_data0 = array();
$xml_current_tag_state0 = '';
function startElementHandler0( $parser0, $element_name0, $element_attribs0 ){
global $item_counter0;
global $item_data0;
global $xml_current_tag_state0;
$xml_current_tag_state0 = $element_name0;
}
function endElementHandler0( $parser0, $element_name0 ){
global $item_counter0;
global $item_data0;
global $xml_current_tag_state0;
$xml_current_tag_state0 = '';
if( $element_name0 == "ITEM" ) {
$item_counter0++;
}
}
function characterDataHandler0( $parser0 , $data0 ){
global $item_counter0;
global $item_data0;
global $xml_current_tag_state0;
if( $xml_current_tag_state0 == '' ) {
return;
}
if( $xml_current_tag_state0 == "TITLE" ) {
$item_data0[$item_counter0]["title"] = $data0;
}
if( $xml_current_tag_state0 == "LINK" ) {
$item_data0[$item_counter0]["link"] = $data0;
}
if( $xml_current_tag_state0 == "DESCRIPTION" ) {
$item_data0[$item_counter0]["description"] = $data0;
}
if( $xml_current_tag_state0 == "PUBDATE" ) {
$item_data0[$item_counter0]["pubDate"] = $data0;
}
}
//-----------------------------------------------------------------------------------------------//
if( !($xml_parser0 = xml_parser_create()) ){
die("Impossibile creare l' XML parser!");
}
xml_set_element_handler($xml_parser0, "startElementHandler0", "endElementHandler0");
xml_set_character_data_handler($xml_parser0, "characterDataHandler0");
if( ! ($fp0 = fopen( "$filename0" , "r" )) ){echo "Impossibile aprire il file xml!";}
while( $data0 = fread($fp0, 4096) ){
if( !xml_parse($xml_parser0, $data0, feof($fp0)) ) {
break; // esce dal loop quando finisce
}
}
xml_parser_free($xml_parser0);
echo"[b]Dal Wiki[/b]";
echo "
";
echo "[url='".$item_data0[0]["link"]."']".$item_data0[0]["title"]."[/url]";
echo "
";
echo $item_data0[0]["description"];
echo "
";
echo "
";
echo $item_data0[0]["pubDate"];