Page web en iso-8859 affichées en utf8 depuis derniere version serveur

Problème :

Mes pages Web encodées en iso-8859-1 qui s’affichaient correctement jusqu’alors, s’affichent depuis les dernier changements sur le serveur d’ouvaton, par défaut en utf8 : Tous les caractères accentués sont remplacés par des points d’exclamation sur fond noir.
Et pourtant j’avais dans mon :<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
Solution :

Insérer dès le début de votre code PHP (juste après la balise <?php) les instructions suivantes :

header('Content-Type: text/html; charset=iso-8859-1'); ini_set( 'default_charset', 'iso-8859-1' );
Dans certains cas ( utilisation de JQuery ) il faut carrément insérer le code suivant dans le juste après le :

<?php header('Content-Type: text/html; charset=iso-8859-1'); ini_set( 'default_charset', 'iso-8859-1' ); ?>

Merci à Matthieu Patout pour cette solution

Autre solution :

Transcoder tous les programmes et la base de données de ISO-8859 en UTF8 !
Je l’ai fait avec 150 programmes et une grosse bdd. Je vous expliquerai comment, un peu plus tard dans ce forum.

Merci de ce retour d’expérience.
C’est sûr que le changement de version PHP par défaut (passage de 5.4 à 5.6) a quelques effets de bord.
Cela dit je crois que c’est quand même bien de ne pas prendre trop de retard dans les versions. La 5.6 semble le bon compromis à l’heure actuelle.

Bonjour

J’ai actuellement ces problèmes sur mon site.
Je me permets de réagir sur :
“Cela dit je crois que c’est quand même bien de ne pas prendre trop de retard dans les versions. La 5.6 semble le bon compromis à l’heure actuelle.”

A conditions de pouvoir opérer les changements. CE n’est pas par plaisir que certains ne font pas les montées de version…
Dans notre cas nous sommes dépassés par la technique que nous ne maitrisons plus. Quelles solutions plus simples existent pour gérer ce genre de problèmes. J’ai l’impression que ces problèmes d’encodage existent depuis la nuit des temps… Et que ces programmes nouvelles générations sont incapables d’afficher des caractères, normaux pour nous. Cela me défrise.

J’ai essayé de le mettre en place dans mySQL. Rien à faire.
Peut-être m’y suis-je mal pris…

De quel site s’agit-il ?

Pour transcoder un programme depuis ISO8859 vers UTF8, lire le programme avec le Bloc-notes de Windows, Cliquer sur Fichier, Enregistrer sous puis, sur l’écran qui s’affiche alors selectez UTF8 dans le menu Encodage avant d’Enregistrer le programme sous le même nom mais dans un autre répertoire.

Pour transcoder les tables de la base de données utiliser PHPMyAdmin pour exporter chaque table à transcoder avec les paramètres :

Méthode d’exportation :
Personnalisée, afficher toutes les options possibles
Sortiie
Enregistrer la sortie vers un fichier

jeu de caractères du fichier : UTF8

Il suffira ensuite de réimporter ces tables avec PHPMyAdmin