**Bonjour,

Voila je rencontre un petit problème avec mon site web. (http://www.bb-info.fr)

J'ai essayer de changer les unicodes en UTF-8, ISO, Windows mais ne fonctionne pas... quoi que je fasse, j'ai toujours un problème avec mes accents (surtout sur le widget dauphiné drôme qui marche pas !)

Voici mon code :
Sur "accueil.php" :

<div class="tab" style="padding: 5px 5px 5px 9px;height:570px;">
    <img style="margin-bottom:10px" alt="Logo Dauph." src="../images/logo_dauphine.jpg">
        <marquee width="100%" height="510" direction="up" scroll="no" scrollamount="2" id="rss_dauphine" onmouseover="rss_dauphine.stop()" onmouseout="rss_dauphine.start()">
            <?php
            echo FeedParser("http://www.ledauphine.com/drome/rss", 15);
            ?>
        </marquee>

Dans feedparser.php :

<?php
// on inclut la classe magpierss
require_once("magpierss/rss_fetch.inc");

// la fonction FeedParser() va extraire le contenu pour l'afficher
// elle prend en paramètre $url_feed, l'url du flux RSS et $nb_items_affiches, le nombre d'éléments (items) à afficher
function FeedParser($url_feed, $nb_items_affiches) {

    // lecture du fichier distant (flux XML)
    $rss = fetch_rss($url_feed);

    // si le parcours du fichier se passe bien, on lit les élements (items)
    if (is_array($rss->items))  {

        // on ne garde que les $nb_items_affiches premiers éléments (items), nombre défini dans l'en-tête de la fonction
        $items = array_slice($rss->items, 0, $nb_items_affiches);

        // on peut récupérer les informations sur le site proposant le flux (optionnel)
        //$site_titre = $rss->channel["title"]; // titre du site
        //$site_lien = $rss->channel["link"]; // lien du site
        //$site_description = $rss->channel["description"]; // description du site   
        // à présent on stocke les données dans $html, variable à afficher

        // titre sous forme de lien
        //$html .= "<a href=\"$site_lien\" title=\"$site_description\" target=\"_blank\">$site_titre</a><br />\n";

        // on affiche la description du site proposant le flux
        //$html .= "<span>$site_description</span><br clear=\"left\" target=\"_blank\"><br />\n"; // le clear="left" renvoie à la ligne même s'il y a une image

        // on fait une boucle sur les informations : pour chaque item, récupérer $titre... et afficher

//        foreach($items as $item) {
//
//            // on mémorise les informations de chaque item dans des variables
//            $titre = $item["title"];
//            $lien = $item["link"];
//            $description = $item["description"];
//           
//
//            // la date utilisée pour les flux RSS est au format timestamp, il faut donc formater la date
//            // conversion au format jj/mm/aa. pour plus d'informations, vous conférer au tutorial sur les timestamp
//            $date = date("d/m/y",strtotime($item["pubdate"]));         
//
//            // on affiche le titre de chaque item
//            $html .= "<a href=\"".$lien."\" title=\"".$titre."\" target=\"_blank\">".$titre."</a><br>\n";
//
//            // puis la date et la description
//            $html .= "<span>$date - $description</span><br clear=\"left\"><br />\n";
//        } // fin de la boucle

        foreach($items as $item) {

            // on mémorise les informations de chaque item dans des variables
            $titre = $item["title"];
            $lien = $item["link"];
            $description = $item["description"];
            //$image = $item["url"];

            // la date utilisée pour les flux RSS est au format timestamp, il faut donc formater la date
            // conversion au format jj/mm/aa. pour plus d'informations, vous conférer au tutorial sur les timestamp
            $date = date("d/m/y",strtotime($item["pubdate"]));         

            // on affiche le titre de chaque item
            $html.= "<a href=\"".$lien."\" title=\"".$titre."\" target=\"_blank\">".$titre."</a><br>";

            // puis la date et la description
            $html.= "<span>$date - $description</span><br clear=\"left\"><br />\n";
        } // fin de la boucle

        // on retourne la variable $html au programme (elle contient le code HTML pour l'affichage du flux)
        return $html;
    } // fin du traitement du fichier
} // fin de la fonction FeedParser()
?>

Également, je voudrais savoir pourquoi mon code php pour les mois n'affichent pas les accents, bon là, nous sommes en mars donc aucun problème mais le mois de février affichaient comme ceci : F~evrier (quelque chose comme ça)
Mon code php :

<?php
setlocale(LC_TIME, 'french');
echo ucwords(strftime('%B %Y', time())); //echo ucwords(strftime('%A %d %B %Y', time()));
?>

En attente de votre aide,
Cordialement, DayTech :)

7 réponses


Carouge10
Réponse acceptée

regarder le manuel utf8_encode
je pense qu'il faudrait le mettre avec le return.

return utf_encode($html);

Bonjour,
essayer avec la fonction utf8_encode ou utf8_decode.

DayTech
Auteur

Comment faire svp ?
Je débute dans le php...

DayTech
Auteur

J'ai encore un problème,
ça s'affiche correctement, merci Carouge mais j'ai encore un soucis :

Que faire svp ?

Mon dieu .... enlèves nous ça tout de suite !

<marquee>
DayTech
Auteur

Mais sinon, ça ne défile pas...

Tu peux utiliser un plugin jquery externe pour ça, ou simplement créer une animation en css-3 avec les keyframe.
Mais ce markup n'est ni standardisé, ni en vois de l'être. Donc extrèmement poluant pour ton code.
http://caniuse.com/#search=marquee