Page 1 sur 1

Encodage bizarre et BD

Publié : 19 avr. 2005, 12:14
par guilhem_mdg
Bon je lance un topic que j'avais lancé il y a quelques temps mais qu'y avait dérapé sur autres choses...
J'ai une page web avec l'en-tête suivante:

Code : Tout sélectionner

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
Autrement dit j'encode ma page en "iso-8859-1". J'ai un formulaire avec des champs de saisie. Les valeurs de ces champs sont envoyées dans une base SQL lors de la soumission du formulaire.
A l'affichage du contenu de la base SQL dans ma page web, encodée en "iso-8859-1" toutes les lettres accentuées saisies dans le formulaire apparaissent maintenant sous formes de signes incompréhensibles.
Cela vient sans doute d'un mauvais encodage dans la base SQL mais comment corriger le problème ?
Merci de votre aide. :lol:

Publié : 19 avr. 2005, 13:15
par calimo
Quels caractères exactement ? Normalement il ne devrait pourtant pas y avoir de problèmes... :roll:

Publié : 19 avr. 2005, 15:46
par guilhem_mdg
Les lettres accentuées.
[edit]
En fait, l'en tête et en ISO... mais il m'affiche du UTF-8 (verif. dans Affichage - Encodage des caractères) et je ne comprend pas pourquoi... :(

Publié : 19 avr. 2005, 18:42
par guilhem_mdg
En fait j'ai trouvé, c'est tout simplement que dans mon httpd.conf il fallait que je mette:

Code : Tout sélectionner

AddDefaultCharset iso-8859-1
Au lieu de:

Code : Tout sélectionner

AddDefaultCharset UTF-8
:D

Publié : 19 avr. 2005, 21:11
par calimo
guilhem_mdg a écrit :Les lettres accentuées.
Oui ça je pense bien :-D
Mais ça fait une énorme différence si ce sont des "?" qui sont affichés ou bien des "ç" et cie comme tu t'en es rendu compte :P

Publié : 20 avr. 2005, 08:02
par guilhem_mdg
Ce sont des
ç
qui étaient affichés. Mais plus maintenant... :lol:

Publié : 20 avr. 2005, 11:20
par chBok
guilhem_mdg a écrit :En fait j'ai trouvé, c'est tout simplement que dans mon httpd.conf il fallait que je mette:

Code : Tout sélectionner

AddDefaultCharset iso-8859-1
Au lieu de:

Code : Tout sélectionner

AddDefaultCharset UTF-8
:idea: Je vais préciser pour tous ceux qui liraient ce topic, que ce fichier httpd.conf provient de la configuration du serveur Apache, et n'a rien à voir avec Firefox. Cette commande contrôle le codage par défaut des caractères que le serveur envoie au navigateur client.

Publié : 20 avr. 2005, 14:42
par calimo
Effectivement, les ç et autres sont typiquement les caractères qui ont été encodés en utf-8 et qui sont décodés comme de l'iso-8859-1(5).

Publié : 20 avr. 2005, 15:19
par FF_Olivier
Je me demande si dans un soucis de compatibilité internationale (on ne sait jamais) et de développements futurs, il ne vaudrait pas mieux travailler en utf-8 tout du long plutôt qu'en iso-8859-1(5) ?

Juste une réflexion en passant ;) ...