IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Problème avec charset ?


Sujet :

Apache

  1. #1
    Invité
    Invité(e)
    Par défaut Problème avec charset ?
    Bonjour,

    J'ai un problème avec mes sites hébergé sur mon serveur apache.

    En effet, lorsque je rempli un formulaire sur un site, les caractères accentué sont resitués faux avec des caractères illisibles.

    Mes pages sont codés en iso-8859-1.

    J'ai essayé d'ajouté AddDefaultCharset iso-8859-1 dans mon httpd.conf et dans le virtualhost du site.

    Mais rien n'y fait...

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Citation Envoyé par babastutz Voir le message
    En effet, lorsque je rempli un formulaire sur un site, les caractères accentué sont resitués faux avec des caractères illisibles.
    A quel moment ils sont restitués faux ? Tu enregistres les données dans une base de données entre temps ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  3. #3
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par _Mac_ Voir le message
    A quel moment ils sont restitués faux ? Tu enregistres les données dans une base de données entre temps ?
    Lorsque j'envois mon formulaire, je récupère la variable par POST et là, elle est déjà fausse.

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    OK. Quand tu dis que tes pages sont codées en ISO-8859-1, quel encodage est en fait reconnu par le navigateur ? On peut avoir une URL pour tester (par MP si tu veux) ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  5. #5
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    En regardant ce qu'envoie le navigateur, tout se passe bien. J'ai fait un test avec "hého" et Firefox envoie ceci, qui est bien de l'ISO-8859-1 :
    Donc a priori, c'est un problème côté serveur. Ce que je ne m'explique pas, c'est le résultat après : "h馼o" qui ne ressemble pas vraiment à un symptôme typique d'un problème d'encodage UTF-8 : on dirait que c'est le h qui est transformé par le é.

    Es-tu sûr que tes fichiers PHP ont été écrits et enregistrés en ISO-8859-1 et qu'ils ont été transférés correctement sur le serveur (en mode binaire par exemple, même si ce n'est pas forcément recommandé) ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  6. #6
    Invité
    Invité(e)
    Par défaut
    En fait, si j'ouvre le fichier avec notepad++, dans format il met encoder en ANSI.

    Sinon, j'ai déclaré au début de chaque fichier que je voulais du iso-8859-1.

    Ils ont été transféré correctement. C'est moi qui gère le serveur.

  7. #7
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    En ANSI, ça devrait le faire, je pense

    Petite question : dans la page qui traite le formulaire, sans faire la redirection, juste pour tester, que se passe-t-il si tu fais un print_r($_POST) ? J'imagine aussi que tu stockes les données en session : fais également un print_r($session) dans cette même page après ton traitement mais aussi sur la page du formulaire, histoire de comparer.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  8. #8
    Invité
    Invité(e)
    Par défaut
    Si j'affiche print_r($_POST); au début du fichier qui traite, la variable est déjà défigurée.

    C'est comme si les requêtes post ou get envoyaient mal les informations...

  9. #9
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Justement non : Firefox envoie les infos au format ISO-8859-1. Donc le problème se situerait sur le serveur Web Je n'y crois pas trop mais essaie de loguer dans les fichiers d'accès d'Apache le contenu de la requête : cf. http://httpd.apache.org/docs/2.2/mod/mod_logio.html

    Sinon, essaie CharsetDefault iso-8859-1 à la place de ton AddDefaultCharset iso-8859-1

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  10. #10
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par _Mac_ Voir le message
    Justement non : Firefox envoie les infos au format ISO-8859-1. Donc le problème se situerait sur le serveur Web Je n'y crois pas trop mais essaie de loguer dans les fichiers d'accès d'Apache le contenu de la requête : cf. http://httpd.apache.org/docs/2.2/mod/mod_logio.html

    Sinon, essaie CharsetDefault iso-8859-1 à la place de ton AddDefaultCharset iso-8859-1
    Dois-je ajouter l'option CharsetDefault à un endroit précis de mon httpd.conf? J'avoue que pour l'instant il n'est fait mention nulle part de charset dans mon fichier.

  11. #11
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Je sais pas trop. La doc donne un exemple de CharsetDefault dans un bloc <Directory> donc mets la directive dans le <Directory> du document root.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  12. #12
    Invité
    Invité(e)
    Par défaut
    Apparemment, rien ne fonctionne... Est-ce que mon apache est possédé par le démon ? Peut-être devrais-je faire appel à un exorciste...

  13. #13
    Invité
    Invité(e)
    Par défaut
    J'ai crééer un fichier test.php avec le minimum dedans :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <?php
    	echo $_POST['test']."<br/>";
    ?>
     
    <html>
    	<head>
    	</head>
    	<body>
    		<form method="post" action="test.php">
    			<input type="text" name="test" />
    			<input type="submit" />
    		</form>
    	</body>
    </html>
    Le résultat est assez surprenant...

  14. #14
    Invité
    Invité(e)
    Par défaut
    Si ça peut donner des idées, j'ai un site joomla sur le même serveur qui n'a pas l'air d'avoir de problème avec les accents.

  15. #15
    Invité
    Invité(e)
    Par défaut
    Ne serait-ce pas le faire que je sois en https ??? Je crois que les sites en http n'ont pas ce problème !

  16. #16
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Citation Envoyé par babastutz Voir le message
    Le résultat est assez surprenant...
    C'est-à-dire ? As-tu la possibilité de tester le même script avec et sans SSL ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  17. #17
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par _Mac_ Voir le message
    C'est-à-dire ? As-tu la possibilité de tester le même script avec et sans SSL ?
    J'ai testé en fait le problème ne vient pas de là.

    Je crois que je commence à me demander si je vais pas tout réinstaller...

  18. #18
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Sur le même serveur Apache, des sites fonctionnent bien et pas d'autres ? Si c'est le cas, ça pourrait intéressant de tester ton test.php sur un site qui marche pour voir ce que ça donne. Copie le script avec une commande copie système, ne recrée pas le fichier.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  19. #19
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par _Mac_ Voir le message
    Sur le même serveur Apache, des sites fonctionnent bien et pas d'autres ? Si c'est le cas, ça pourrait intéressant de tester ton test.php sur un site qui marche pour voir ce que ça donne. Copie le script avec une commande copie système, ne recrée pas le fichier.
    J'ai copier le fichier en ligne de commande et voici 3 liens.

    les 2 premiers ne fonctionnent pas alors que le troisième fonctionne....

    lien 1
    lien 2
    lien 3

  20. #20
    Invité
    Invité(e)
    Par défaut
    Je crois que j'ai trouvé !!!!!!! J'arrive pas à l'expliquer mais si je mets www.adresse.com c'est ok et si je mets adresse.com ça ne fonctionne plus !!

    y'a plus qu'à trouver pourquoi ça fait ça...
    Dernière modification par Invité ; 21/11/2008 à 16h06.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/07/2008, 14h09
  2. Problème de charset avec le mod_proxy_html
    Par tipou75 dans le forum Apache
    Réponses: 11
    Dernier message: 27/02/2008, 16h19
  3. Problème de charset avec un script ASP
    Par torobravo dans le forum ASP
    Réponses: 6
    Dernier message: 10/01/2008, 19h30
  4. Réponses: 7
    Dernier message: 26/04/2007, 13h21
  5. Bonjour, JSP avec Charset UTF-8 Problème
    Par chakcc dans le forum Langage
    Réponses: 1
    Dernier message: 03/01/2007, 11h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo