Problème d'encodage ISO / UTF-8 [Fermé]

Signaler
Messages postés
1
Date d'inscription
samedi 28 juillet 2018
Statut
Membre
Dernière intervention
28 juillet 2018
-
mimigenie
Messages postés
1189
Date d'inscription
dimanche 3 janvier 2010
Statut
Membre
Dernière intervention
4 août 2018
-
Bonjour !

J'ai un ancien blog qui date de 2010 (mais dont les sources en php doivent dater de... euh... 2005, hum! bref), et qui est devenu illisible à cause d'un problème d'encodage de caractères.
J'aimerais juste qu'il s'affiche correctement. Voici le lien : http://luce-pasquini.fr/blog/

A priori ça m'a l'air d'être de l'affichage d'un document iso-8859-1 en UTF8 qui provoque ça.

J'ai tenté de rajouter cela à mon header :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<META NAME="revisit-after" CONTENT="30">
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">


et aussi :
<meta http-equiv="Content-Language" content="French" /> 

mais... ça ne vient pas de là.

Remarque : quand je change l'encodage sous Firefox en "Occidental", ça fonctionne.

J'ai lu qu'il fallait que je regarde aussi du côté de l'encodage de mes fichiers, mais est ce que cela signifie que je dois ouvrir TOUS mes fichiers php et les réenregistrer ? Ou juste qquns ?
(Je l'ai fait pour le fichier qui comprend le header, mais pas pour les autres.)

Et au niveau de la BD, comment faire pour changer l'encodage ? Peut on changer l'encodage d'une table sans toucher aux autres ?

Merci pour votre aide !

1 réponse

Messages postés
1189
Date d'inscription
dimanche 3 janvier 2010
Statut
Membre
Dernière intervention
4 août 2018
215
Bonjour,

Le mieux est d'être cohérent dans ton choix d'encodage et de n'avoir qu'un seul encodage si possible.
Si tes fichiers sont en iso-8859-1, alors pour ne pas devoir tous les modifier (car si tu les modifies, c'est mieux de tous les modifier), déclare dans l'en-tête que l'encodage est iso-8859-1 au lieu de utf-8. Cela me semble la solution la plus simple.

Pour changer l'encodage d'une table ou de la base de données, si tu utilises phpmyadmin, tu peux directement modifier la structure de la table.

Il existe aussi des fonctions php (cf la documentation) pour convertir un texte utf-8 en iso-8859-1 et inversement.