Bonjour. visiteurs jour : 14
Au président
Beauté santé
Infos loisirs
Ensemble
Jean
Informatique
Relativité
Relativity
Les joies de l'informatique et de l'internet !
Accueil - Disques - Excel - Informatique - Infos - Internet - Javascript - logiciels - Programation - Sites RJ - Vidéo - Plan du site -
Problème des codes caractères 8859-1 Latin
Il existe encore quelques textes anciens qui n'ont pas été convertis en utf-8 le codage international de tous les caractères de l'humanité quand le codage Latin ne concerne que les langues latines.
Nous avions un site entier dans cette situation. Il fallait modifier tous les programmes pour les passer en utf-8 et surtout convertir tous les fichiers.
L'éditeur PSPad permet de convertir tous les fichier dans de nombreux codages mais il faut le faire un par un.
Heureusement PHP propose deux fonctions : utf8_encode qui permet de coder un fichier en utf-8 et utf8_decode qui fait l'inverse.
La solution a été de garder les fichiers codés en Latin et d'applique utf8_encide dans les programmes d'affichage tout en restant en caractères Latins dans es programmes de création - modification
Et ça marche ! merci PHP
Nos programmes concernés
Le programme affiche.php>Appel le menu du dossier-sujet courant. Il encode ce fichier.
Il utilise la fonction "function f_require($dossier,$page) {...}" du module lib_moteur.php et cette fonction encode le fichier (page-article) appelé.
Les autres programmes comme igere/php ou vision.php restent en caractères Latin.
Les caractères latin iso 8889-1
La norme actuelle depuis plusieurs années est utf-8 et le codage en caractères latinn disparait progressivement. Pour les cas particuliers on dispose des fonctions utf8_encode et utf8_decode
Dans le module lib_moteur_site.php la fonction f_require(dossier_a,page_a) contient :
if ($rep1.$fic!= "acceuil/acceuil.htm") {
....foreach ($x1 as $i=>$a ){
}$x2.=utf8_encode($a);
}