Caractère speciaux dossier [php-linux]
-CCM-
Messages postés
950
Statut
Membre
-
-CCM- Messages postés 950 Statut Membre -
-CCM- Messages postés 950 Statut Membre -
Bonjour,
j'ai un script php qui récupère les nom desdossièrs et me les mets dans une liste déroulante, sous win, tout baigne mais sur mon serveur, j'ai des caractères bizzar a la place des accents....
Ma page est en charset=iso-8859-15 mais le texte avec accents est très bien affiché, il ne s'agit juste des nom de répertoires dans ma liste déroulante.
Que puis-je faire ?? modification du php ou paramètrage linux ... ???
merci
j'ai un script php qui récupère les nom desdossièrs et me les mets dans une liste déroulante, sous win, tout baigne mais sur mon serveur, j'ai des caractères bizzar a la place des accents....
Ma page est en charset=iso-8859-15 mais le texte avec accents est très bien affiché, il ne s'agit juste des nom de répertoires dans ma liste déroulante.
Que puis-je faire ?? modification du php ou paramètrage linux ... ???
merci
A voir également:
- Caractère speciaux dossier [php-linux]
- Caractère spéciaux - Guide
- Caractere speciaux - Guide
- Caractere speciaux mac - Guide
- Dossier appdata - Guide
- Caractère ascii - Guide
3 réponses
Vérifie l'encodage de ta page. Personnellementt, je n'utilise que de l'utf8
johand@osiris:/var/www$ cat brol.html
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf8" />
</head>
<body>
éééé<a href="/doc/">Documentation locale</a>
</body>
</html>
johand@osiris:/var/www$ cat brol2.html
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
</head>
<body>
éééé<a href="/doc/">Documentation locale</a>
</body>
</html>
Regarde la différence dans ton navigateur.
Sous Linux tu peux utiliser iconv pour les conversions.
Si tu as la maîtrise du serveur (Apache, je suppose...); tu peux configurer le charset au niveau des fichiers de config d'Apache. C'est lui qui enverra les entêtes HTTP appropriées.
johand@osiris:/var/www$ cat brol.html
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf8" />
</head>
<body>
éééé<a href="/doc/">Documentation locale</a>
</body>
</html>
johand@osiris:/var/www$ cat brol2.html
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
</head>
<body>
éééé<a href="/doc/">Documentation locale</a>
</body>
</html>
Regarde la différence dans ton navigateur.
Sous Linux tu peux utiliser iconv pour les conversions.
Si tu as la maîtrise du serveur (Apache, je suppose...); tu peux configurer le charset au niveau des fichiers de config d'Apache. C'est lui qui enverra les entêtes HTTP appropriées.
Bonjour,
Vous avez probablement une différence de codage entre le contenu de vos pages et vos noms de répertoire.
A priori php ne convertit pas les codages. Les codages à la sortie sont ceux des fichiers qu'il a utilisés. De même les noms de répertoire ont le codage qui a été utilisé pour créer ces répertoires.
Il vous faut donc modifier les paramétrages des outils qui vous ont servi à créer le texte affiché par php et à créer les répertoires...Mais souvent ça a des impacts en chaîne, et il faut se résoudre à se retrousse les manches pour introduire des conversions dans les maillons que l'on maîtrise.
Notez aussi que Windows ne connaît en général pas l'iso-8859-15, et utilise ses codages propres (en général cp1252 pour l'Europe Occidentale, regardez si vous affichez correctement le signe euro).
Manu
Vous avez probablement une différence de codage entre le contenu de vos pages et vos noms de répertoire.
A priori php ne convertit pas les codages. Les codages à la sortie sont ceux des fichiers qu'il a utilisés. De même les noms de répertoire ont le codage qui a été utilisé pour créer ces répertoires.
Il vous faut donc modifier les paramétrages des outils qui vous ont servi à créer le texte affiché par php et à créer les répertoires...Mais souvent ça a des impacts en chaîne, et il faut se résoudre à se retrousse les manches pour introduire des conversions dans les maillons que l'on maîtrise.
Notez aussi que Windows ne connaît en général pas l'iso-8859-15, et utilise ses codages propres (en général cp1252 pour l'Europe Occidentale, regardez si vous affichez correctement le signe euro).
Manu
" Ma page est en charset=iso-8859-15 " le souci n'est pas dans l'affichage de mes accents, le texte s'affiche bien avec les accents.
Mais le script de récuperation des noms de dossier ...
Vérifie l'encodage de ta page. Personnellementt, je n'utilise que de l'utf8
Ma page est en charset=iso-8859-15 mais le texte avec accents est très bien affiché, il ne s'agit juste des nom de répertoires dans ma liste déroulante.
le problème ne vient pas des caractères dans ma page mais de ceux récupérés dans mon script ..