Problème d'encodage ISO / UTF-8

Fermé
Kissy6424 Messages postés 1 Date d'inscription samedi 28 juillet 2018 Statut Membre Dernière intervention 28 juillet 2018 - 28 juil. 2018 à 06:50
mimigenie Messages postés 1180 Date d'inscription dimanche 3 janvier 2010 Statut Membre Dernière intervention 4 août 2018 - 4 août 2018 à 23:11
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 !
A voir également:

1 réponse

mimigenie Messages postés 1180 Date d'inscription dimanche 3 janvier 2010 Statut Membre Dernière intervention 4 août 2018 313
4 août 2018 à 23:11
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.
0