• User Attivo

    Problema Feed RSS

    Salve ragazzi!

    Spero di trovare in voi un valido aiuto....

    sto cercando di inserire i feed rss sul mio sito ma ho un problema...

    Riesco ad estrarre i dati dal database e a creare la pagina dei feed ma quando nella descrizione compare un testo con le parole più si blocca tutto....

    Come posso fare?

    Ho trovato uno script che mi dovrebbe filtrare ale parole ma non funziona...

    Qualcuno mi potrebbe dare una mano?

    Ecco lo script:

    function puliscirss($dato){
    $dato=html_entity_decode(strip_tags($dato));
    $dato=utf8_encode(ltrim(rtrim(str_replace(array(">","<",""","n","r","t","<br />","<br>","<br >"," "," "," "," "," "," "," ","")," ",$dato))));
    $dato=str_replace(array("&"),"e",$dato);
    return $dato;
    }

    Cia e grazie in anticipo a tutti...


  • User Attivo

    Ciao matrixman,
    probabilmente è un problema di codifica... per prima cosa prova ad utilizzare firefox che evita di piantarsi... :fumato:

    Poi verifica di aver utilizzato un header corretto, tipo:

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">

    per fare le prove puoi temporaneamente rimuovere questo header (o quello tuo) e mettere l'header di una normale pagina web, in questo modo eviti che il browser faccia i capricci. 😉

    Inotre, quando invii l'output, usa la definizione dell'header con:

    header("Content-type: application/xml");

    Infine, venendo al tuo problema, la causa causorum dovrebbe risiedere nei caratteri speciali, tipo la u accentata (ù), che non sono ammessi nel sorgente e che devi scrivere con la relativa codifica html mediante ad esempio htmlspecialchars. Pertanto, tutti gli output testuali, trasformali con:

    $testo = htmlspecialchars($testo);

    Facci sapere se (e come) risolvi.
    :ciauz: