Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1479 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [IE] bug sur les formulaires, l'avez vous aussi constaté ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[IE] bug sur les formulaires, l'avez vous aussi constaté ?

n°872451
nima
Posté le 13-10-2004 à 15:20:42  profilanswer
 

Bonjour à tous,
Je me suis pas mal excité sur un problème avec un formulaire depuis quelques jours et j'ai réussi à reproduire et à cerner le souci.
j'aimerai savoir si vous l'avez déjà rencontré (sinon, c'est peu être un nouveau bug, qui sait) et surtout si vous arrivez à le reproduire.
Voici les instructions :
 
Le bug se produit avec Internet Explorer (j'ai une v6), et se situe au moment de l'envoi des infos d'un formulaire avec les caractèristiques suivantes :
method : post
enctype : multipart/form-data

Code :
  1. exemple :
  2. <form name="monForm" method="post" action="test.asp" enctype="multipart/form-data">


Il faut ensuite que le document HTML contenant ce formulaire soir en charset iso-8859-1 :

Code :
  1. exemple de tag meta :
  2. <META http-equiv=Content-Type content="text/html; charset=iso-8859-1">


Il faut aussi que le dernier champ du formulaire soit un input de type "checkbox" ou "radio".
Enfin, il faut que l'un des champs du formulaire (un input type=text par exemple ou un textarea) contienne au moins un caractère du charset windows-1252 (par exemple issu d'un copier/collé de MS Word -> ‚ƒ„…†‡ˆ‰Š‹Œ‘’“”•–—˜™š›œŸ , voir par exemple http://psacake.com/web/0302-b.asp )
ET que le dernier champ du formulaire de type "checkbox" ou "radio" ne soit pas coché.
Et là c'est le drame.
 
IE envoie les infos du formulaire, mais elles sont mal formées et le début est tronqué, résultat les logiciels ne peuvent pas traiter les valeurs. ASP par exemple n'arrive donc pas à répartir les valeurs dans la collection request.form.
 
Comment donc voir qu'il y a une erreur ?
Il suffit pour cela d'afficher les données "brutes" d'envoi (request.binaryread) en définissant l'action du formulaire comme pointant vers un fichier de ce type (là j'ai qu'un exemple en ASP, mais on devrait avoir le même résultat en PHP normalement, selon ma théorie)
 
exemple de fichier test.asp :

Code :
  1. <%
  2. Response.ContentType = "text/plain"
  3. response.binarywrite(request.binaryread(Request.TotalBytes))
  4. %>


 
on constate donc que la première ligne est tronquée et qu'il manque

Code :
  1. -----------------------------7d46b38300302
  2. Content-Disposition: form-data; name="

au début des données.
 
Note : 7d46b38300302 varie à chaque envoi du formulaire, là j'ai juste copié un cas particulier.
 
Donc forcement ça marche moins bien.
 
Par contre si on coche la checkbox" ou "radio" ou qu'on a pas enctype="multipart/form-data" ou encore que le charset de la page est windows-1252 ou qu'il n'y a pas de caractère windows-1252 dans aucun champs, ça marche.  
C'est sur que c'est pas un cas qu'on rencontre souvent, mais quand même...
 
Donc si vous aussi vous constatez ce bug en suivant mes instructions, ben c'est que c'est pas ma faute et je vous en remercie :)


Message édité par nima le 13-10-2004 à 15:23:18
mood
Publicité
Posté le 13-10-2004 à 15:20:42  profilanswer
 

n°874278
nima
Posté le 15-10-2004 à 17:10:19  profilanswer
 

le bug semble bien confirmé de mon côté, j'ai vérifié l'échange HTTP avec Ethereal et le début des donnée est bien tronqué (en rouge).  :

Citation :

POST /test/phpinfo.php HTTP/1.1
Accept: */*
Referer: http://xxxxx/testfiche.html
Accept-Language: fr
Content-Type: multipart/form-data; boundary=---------------------------7d42af224079e
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Host: xxxxxxx
Content-Length: 9442
Connection: Keep-Alive
Cache-Control: no-cache
 
[ICI IL MANQUE LE DEBUT DES DONNEES]
fich_brou_raison_sociale"
 
TOTO
-----------------------------7d42af224079e
Content-Disposition: form-data; name="fich_brou_logo"; filename=""
Content-Type: application/octet-stream
[...]


 
Alors que cela devrait normalement donner :
 

Citation :

POST /test/phpinfo.php HTTP/1.1
Accept: */*
Referer: http://xxxxx/testfiche.html
Accept-Language: fr
Content-Type: multipart/form-data; boundary=---------------------------7d433a2ad0410
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Host: xxxxxxxx
Content-Length: 9622
Connection: Keep-Alive
Cache-Control: no-cache
 
-----------------------------7d433a2ad0410
Content-Disposition: form-data; name="fich_brou_raison_sociale"
TOTO
-----------------------------7d433a2ad0410
Content-Disposition: form-data; name="fich_brou_logo"; filename=""
Content-Type: application/octet-stream
[...]


 
Si jamais vous aviez 5 minutes pour essayer de votre côté, n'hésitez pas à me dire ce que ça fait chez vous.
Merci :)


Message édité par nima le 15-10-2004 à 17:22:55
n°874498
nima
Posté le 15-10-2004 à 22:19:47  profilanswer
 

Recoucou !
Savez vous s'il existe un système de bug tracking chez microsoft pour IE ?
J'aimerai voir si ce bug a déjà été recenssé...
 
Merci.

n°902539
jpouille12​3
Posté le 19-11-2004 à 09:44:55  profilanswer
 

nima a écrit :

Recoucou !
Savez vous s'il existe un système de bug tracking chez microsoft pour IE ?
J'aimerai voir si ce bug a déjà été recenssé...
 
Merci.


 
Bonjour Nima,
 
J'ai la même anomalie que toi et j'aimerais savoir si tu as trouvé une solution ou une réponse à to problème.
 
Merci d'avance.
 
Jean Pierre

n°1203237
nima
Posté le 20-09-2005 à 13:16:03  profilanswer
 

Oups désolé, je ne surveillait pas ce sujet... je n'ai donc pas vu ton message.
As tu trouvé depuis le temps ?
Sinon, la seule solution que j'ai trouvé c'est de mettre un champ hidden qui sert à rien à la fin du formulaire, comme ça il ne fini pas avec un checkbox ou radio et le bug ne se produit pas.
En tout cas, ça en dit long sur le code de IE...ça doit pas être joli joli...

n°1608409
laurent_ty​v
Posté le 05-09-2007 à 11:09:46  profilanswer
 

nima a écrit :

Oups désolé, je ne surveillait pas ce sujet... je n'ai donc pas vu ton message.
As tu trouvé depuis le temps ?
Sinon, la seule solution que j'ai trouvé c'est de mettre un champ hidden qui sert à rien à la fin du formulaire, comme ça il ne fini pas avec un checkbox ou radio et le bug ne se produit pas.
En tout cas, ça en dit long sur le code de IE...ça doit pas être joli joli...


Génial...4heures que je galère avec ce problème :
envoi en php dans un champ "description d'un lieu" contenant un texte copié collé de word qui utilise des caractères tel que œ, ǽ ...
la requete post est tronquée sous internet explorer 6 mais pas sur firefox.
Solution:
placer un champ hidden juste après l'ouverture de la balise form, c'est lui qui prendra  :bounce:  
Merci encore.

n°1608460
gatsu35
Blablaté par Harko
Posté le 05-09-2007 à 12:12:47  profilanswer
 

putain le déterrage de topic [:tinostar]


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [IE] bug sur les formulaires, l'avez vous aussi constaté ?

 

Sujets relatifs
[HTML/PHP][Résolu] Problème de sauvegarde pour les formulaires[PHP] URL Rewriting et formulaires [résolu]
Que faut-il installer pour creer des formulaires Word (.dot) ?[PHP/HTML] petites questions formulaires / insertions
Afficher des formulaires web ASPX sur une page HTML[Struts] mes formulaires gardent toutes les valeurs de champs en cache
[Access] Remplir les champs des formulaires en Access [Résolu]Formulaires ASP.NET et Frames
Remplir les formulaires web automatiquementRemplir les formulaires web automatiquement
Plus de sujets relatifs à : [IE] bug sur les formulaires, l'avez vous aussi constaté ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR