Caractère speciaux dossier [php-linux]
Fermé
-CCM-
Messages postés
927
Date d'inscription
mercredi 28 mai 2008
Statut
Membre
Dernière intervention
16 juin 2013
-
1 sept. 2008 à 17:33
-CCM- Messages postés 927 Date d'inscription mercredi 28 mai 2008 Statut Membre Dernière intervention 16 juin 2013 - 4 sept. 2008 à 15:51
-CCM- Messages postés 927 Date d'inscription mercredi 28 mai 2008 Statut Membre Dernière intervention 16 juin 2013 - 4 sept. 2008 à 15:51
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]
- Caractere speciaux - Guide
- Caractère spéciaux - Guide
- Caractère ascii - Guide
- Caractere speciaux mac - Guide
- Dossier appdata - Guide
3 réponses
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
934
1 sept. 2008 à 18:49
1 sept. 2008 à 18:49
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
-CCM-
Messages postés
927
Date d'inscription
mercredi 28 mai 2008
Statut
Membre
Dernière intervention
16 juin 2013
84
4 sept. 2008 à 15:51
4 sept. 2008 à 15:51
personne pour m'aider ??
2 sept. 2008 à 09:40
" 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 ...
2 sept. 2008 à 09:45
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 ..