• User Attivo

    MySql + PhP + XML = codifica caratteri sbagliata

    Salve, ho un problema che non riesco a risolvere.
    Ho il seguente codice php:

    [PHP]<?php
    include_once("../../conf/database.php");
    header('Content-type: text/xml charset=UTF-8');

    echo "<?xml version="1.0" encoding="ISO-8859-1"?>";

    ?>
    <rss>
    <channel>
    <title>Home - Action Like</title>
    <?php
    // Selezione e stampa dei dati da una tabella mysql
    ?>
    </channel>
    </rss>
    [/PHP]

    Cosa succede? Il file funziona correttamente, lo script php seleziona correttamente le informazioni e le stampa correttamente. Il problema sorge quando il database mi stampa dati speciali (accenti e simboli). Ho provato diverse impostazioni ed ho ottenuto due casi:

    • Se imposto questa stringa così: <?xml version="1.0" encoding="UTF-8"?> ricevo un errore di costruzione della struttura xml.
    • Se imposto questa stringa così: <?xml version="1.0" encoding="ISO-8859-1"?> (come da codice fornito) ottengo al posto dei caratteri speciali dei bellissimi quadratini neri con un punto di domanda al centro.

    Idee?