Suivez les fils RSS
 

Des livres incontournables pour tout maîtriser

  • CSS avancées - vers HTML5 et CSS3
  • HTML5
  • CSS2
  • PHP5 avanc�
  • Memento MySQL
  • Memento CSS 3
  • Memento XHTML
  • WordPress 3 100% pratique
  • jQuery et jQuery UI
Auteur
ynot74
#
Citer
5 Posts
Bonjour,

J'ai un souci d'accents lors du remplissage d'un formulaire.

Le formulaire est rempli, le contenu passe par une fonction javascript qui charge une page en ajax. Cette page enregistre les données dans un bd mySQL et envoie un mail de confirmation.

Tout ceci est en UTF-8 et fonctionne très bien avec tous les navigateurs sauf Internet explorer.

En ajoutant des utf8_decode et une fonction javascript j'ai réussi à la faire fonctionner sur IE mais du coup plus sur les autres navigateurs.

Le problème sur IE c'est qu'il coupe le mot au niveau de l'accent dans la base de donnée et il remplace l'accent par un ? dans l'email.

Quelqu'un aurait-il piste?

Merci de votre aide.

^
titchagcreation
#
Citer
64 Posts
Dans le menu Page>Codage de IE, est-ce que UTF-8 est coché?

http://www.titchagcreation.com 
^
ynot74
#
Citer
5 Posts
Dans quel menu? Celui de IE?

^
titchagcreation
#
Citer
64 Posts
Oui celui de IE. Je me réfère à la version 8.

http://www.titchagcreation.com 
^
ynot74
#
Citer
5 Posts
Alors difficile à dire. En fait j'ai mis un formulaire sur mon site mais il y a des centaines d'utilisateurs qui l'utilise. Je pense que le problème ne doit pas être au niveau de leur configuration de IE.

^
titchagcreation
#
Citer
64 Posts
Il faudrait vérifier plusieurs points:
- Il faut vérifier le header HTTP de ta page. Sous Firefox, tu peux passer par le menu Outils>WebDeveloper>Informations>En-têtes HTTP (là j'ai doute. Est-ce qu'il faudrait pas le plugin WebDeveloper pour avoir ce menu??)
- Il faut vérifier l'encodage de ta page contenant ton formulaire (tu peux utiliser notepad++ pour le faire).

Au fait, tu peux nous mettre le lien vers ton formulaire?
Modifié par titchagcreation (07 Dec 2011 - 19:58)

http://www.titchagcreation.com 
^
ynot74
#
Citer
5 Posts
Le header est bon, et l'encodage de la page aussi.
Je pense que le problème est au moment ou je passe les informations en ajax.

En fait le formulera est chargé en ajax, puis l'utilisateur le rempli. Ensuite il l'envoie à une fonction javascript qui charge une page en ajax en passant le contenu du formulaire en variables sur le chargement de la page (ajax.php?nom=monnom&prenom=monprenom...)
Je pense que c'est là qu'il y a un problème.
Ensuite la page ajax sauvegarde dans la base de données et envoie un mail.
Si l'utilisateur est sur IE, dans la base de donnée un mot avec accent est coupé au l'accent et le mail envoie un point d'interrogation à la place de l'accent. Comme ceci:
Exemple avec Céline, dans la base de donnée on aura "C" et dans le mail "C?line".

Merci

^
titchagcreation
#
Citer
64 Posts
Et est-ce que le fichier ajax.php est encodé en UTF-8?
On est bien d'accord que l'encodage d'un fichier (rien à voir avec ce qui est dans l'en-tête du code HTML) peut-être différent de ce que le serveur renvoie au navigateur web.
Si t'as un fichier encodé en ISO et que le serveur envoie de l'UTF-8, il peut y avoir problème avec IE. Ces problèmes d'encodage, je les ai souvent rencontré aussi avec IE.

Je t'avoue que ça serait peut-être plus simple en jetant un coup d'oeil à ta page web.

http://www.titchagcreation.com 
^
ynot74
#
Citer
5 Posts
Oui tous les fichiers sont bien encodés en UTF-8.

Le formulaire est sur cette page: http://www.lesarts.ch/saison/spectacle.php?ID=368 et en cliquant sur une date le formulaire apparaît depuis la page ajax.

^
jb_gfx
#
Citer
2853 Posts
A (re)lire. smile

Je ne sais pas si je suis cultivé ou si je viens d'inventer deux nouveaux mots.

http://www.pixemedia.com/ 
^