Salve a tutti.
Ho una pagina PHP che mi cre un feed RSS, però alcuni di servizi di registrazione et similia la rigettano, dicendo che non è corretta o che non possono caricarla.
Questo è il codice della pagina: dov'è l'errore?
Codice PHP:
<?php    
require "config.php";

$link mysql_connect($host$dbuser$dbpass)
    or die(
"Impossibile connettersi al database");
mysql_select_db($dbname)
    or die(
"Impossibile selezionare il database");

function 
strSelect$myString$maxLength ) {
    
$out "";
    
$s explode" ",$myString );
    for( 
$i 0$cs count$s ); $i $cs$i++ ) {
        
$out .= $s[$i]." ";
        if( isSet( 
$s[$i+1] ) && ( strlen$out ) + strlen$s[$i+1] ) ) > $maxLength ) {
            break;
        }
    }
    return 
rtrim$out );
}
header("Content-Type: application/xml"); 
echo 
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>";
echo 
"<rss version=\"2.0\">\n
<channel>\n
<title>ShaVis RSS feeder</title>\n
<link>[url]http://www.shavis.com[/url]</link>\n
<description>the visual's newsnet</description>\n
<language>en-EN</language>\n
<image>\n
<title>ShaVis</title>\n
<url>[url]http://www.shavis.com/logostart.jpg[/url]</url>\n
<link>[url]http://www.shavis.com[/url]</link>\n
</image>\n
<webMaster>info@shavis.com</webMaster>\n
"
;
    
$link "http://www.shavis.com/onefeed.php?feed=";

$today date("Y-m-d");
$week date("Y-m-d" strtotime('+1 week'));
    list(
$anno$mese$giorno) = explode("-"$today); 
    
$mese $mese+3;
    if (
$mese == || $mese == || $mese == || $mese == || $mese == || $mese == || $mese == || $mese == || $mese == 9) {
    
$mese "0" $mese;
    } 
    
$month3 $anno "-" $mese "-" $giorno
    
$result mysql_query("SELECT * FROM `news` WHERE `date` <= '$week' AND (`deadline` = '000-00-00' OR `deadline` >= CURDATE()) AND `date` <= '$month3' ORDER BY `news_id` DESC");
        while (
$row mysql_fetch_array($result)) {
        
$tit $row["title"];
        
$tit str_replace("®","&reg;","$tit");
        
$tit strtoupper($tit);
        
$tit str_replace("é","&Eacute;","$tit");
        
$tit str_replace("à","&Aacute;","$tit");
        
$tit str_replace("á","&Aacute;","$tit");
        
$tit str_replace("ò","&Oacute;","$tit");
        
$tit str_replace("è","&Eacute;","$tit");
        
$tit str_replace("ì","&Iacute;","$tit");
        
$tit str_replace("ù","&Uacute;","$tit");
        
$testo $row["text"];
        
$testo str_replace("’","'","$testo");
        
$testo str_replace("è","&egrave;","$testo");
        
$testo str_replace("à","&agrave;","$testo");
        
$testo str_replace("á","&agrave;","$testo");
        
$testo str_replace("–","-","$testo");
        
$testo str_replace("ò","&ograve;","$testo");
        
$testo str_replace("ì","&igrave;","$testo");
        
$testo str_replace("ù","&ugrave;","$testo");
        
$testo str_replace("é","&eacute;","$testo");
        
$testo str_replace("…","...","$testo");
        
$testo str_replace("“","","$testo");
        
$testo str_replace("”","","$testo");
        
$testo str_replace("í","&iacute;","$testo");
        
$testo str_replace("ó","&oacute;","$testo");
    
$nrmax "60";
$lunghezza strlen($testo);
if (
$lunghezza $nrmax) {
$testo strSelect$testo60 ) . " ...";
} else {
$testo $testo;
}
echo 
"<item>\n";
echo 
"<title>" $tit "</title>\n";
echo 
"<link>" $link $row["news_id"] . "</link>\n"
echo 
"<description>" $testo "</description>\n";
echo 
"<date>"  $row["date"] . "</date>\n";
echo 
"</item>\n";
}
echo 
"</channel>\n
</rss>"
;

$query3 = ("OPTIMIZE TABLE `news`");
$result3 mysql_query($query3)
    or die(
"Optimize failed");
?>