Aller au contenu

Problème d'accents avec un script PHP


Sujets conseillés

Posté (modifié)

Bonjour,

j'ai téléchargé un script PHP me permettant de gérer des sortes d'annonces avec un une base de donnée mysql.

Ce script correspondait exactement à ce que je voulait mais étant en angais j'ai dû le traduire en français. Arrivé au bout de mes peines, je me retrouve face à un problème:

Lorsque je rentre une annonce dans l'interface d'administration du script PHP et que je la consulte directement avec la page php sur laquelle s'affiche l'ensemble des annonces (results.php) il n'y a aucun problème d'affichage des accents.

En revanche, dès que j'intègre ce results.php au sein d'une des pages de mon site(<?php include "results.php"; ?>), alors les accents sont remplcés par des points d'interrogation.

je n'y comprend rien, bien que je me doute que cela provienne d'un probleme d'encodage entre utf-8, iso-machin ou autre.

Si quelqu'un peut m'éclairer, d'avance merci.

Modifié par nebuchad34
Posté

Bonjour,

Si l'entete de tes pages html contient le jeux de caractères iso-8859-1 , c'est donc que le script php que tu as récupéré te délivre un texte formatté au jeu de caractère utf8.

Il te faut donc appliquer une fonction : utf8_decode sur les variables php que ton script doit afficher (par expl : utf8_decode($texte); )

Cela devrait suffire à contourner le problème.

Si a contrario tes pages contiennent un jeu de caractère utf8 alors emploi la fonction : utf8_encode();

Bon courage

Posté (modifié)

Mes pages sont créées sous dreamweaver et dans l'en tête il y a marqué UTF-8

En revanche dans l'en tête de la page du script il y a marqué iso-8859-1

alor sje doit utiliser quoi encode ou decode ?

et comment concretement j'utilise cette fonction, je tape ça où ?

je n'ai vraiment aucune connaissance du langage PHP, alors merci de bien vouloir m'aider au pas à pas.

Modifié par nebuchad34
Posté

Tu dois donc utiliser utf8_encode

Sans voir le script il n'est pas évident de te dire sur quoi tu dois passer cette fonction, mais essaye de repérer les variables qui contiennent le contenu dont le script fait un echo.

Bon courage

Posté

C'est bon j'ai trouvé, j'ai réussi à déclarer une variable $petitedescription = utf8_encode($row[sHORTDESCRIPTION]) et à la remplacer dans les "print" qui affiche le résultat : c'est parfait !!

Encore merci

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...