Input type file & IE8

alloyves Messages postés 15 Date d'inscription mardi 16 octobre 2007 Statut Membre Dernière intervention 28 mars 2011 - 25 mars 2011 à 15:53
alloyves Messages postés 15 Date d'inscription mardi 16 octobre 2007 Statut Membre Dernière intervention 28 mars 2011 - 28 mars 2011 à 14:34
Bonjour à tous,

J'espère ne pas créer de doublon et ne pas me tromper de forum.

Je développe une application MVC en C# et j'ai un souci avec un input type file.

Sous IE9 ça fonctionne très bien, mais dès que j'utilise l'application avec IE8, mon fichier ne veut pas remonter.

Je joins un extrait du code de mes différentes pages :
Code ma vue MaCarteDeVisite :
<% using (Html.BeginForm("MaCarteDeVisite", "Medecin", FormMethod.Post, new { @class = "form-4", enctype="multipart/form-data"}))
                       { %>
<%-- code non pertinent --%>


<label for="file1">Ajoutez une photo</label>




[# Choisissez un fichier]


(Format jpg)


<%-- code non pertinent --%>

<%}%>


Code de mon controller :

string mimeType = Request.Files[0].ContentType;
                        if (mimeType == "image/jpeg")
                        {
                            Stream fileStream = Request.Files[0].InputStream;
                            string fileName = Path.GetFileName(Request.Files[0].FileName);
                            int fileLength = Request.Files[0].ContentLength;
                            picture = new byte[fileLength];
                            fileStream.Read(picture, 0, fileLength);
                            fileStream.Close();
                        }


Quand je clique sur valider dans ma page, je n'ai pas d'erreur.

J'ai chercher sur internet, à priori il y a un paramètre dans IE8 lorsqu'il est connecté à internet (pas en intranet) qui empeche l'envoi du chemin complet du fichier. Je pense que le souci vient de là.

Toute aide est la bienvenue !

1 réponse

alloyves Messages postés 15 Date d'inscription mardi 16 octobre 2007 Statut Membre Dernière intervention 28 mars 2011 1
28 mars 2011 à 14:34
Bon alors la réponse est toute bête.

Le code que j'ai fonctionne bien, mais sans debug sous IE8 j'ai mis un peu de temps à trouver le souci.

C'est très simple, depuis IE8, le MIME type d'un fichier en jpg est image/pjpeg ...

Donc j'ai remplacé :

(mimeType == "image/jpeg")


Par :

(mimeType "image/jpeg" || mimeType "image/jpg" || mimeType == "image/pjpeg")


Et mon problème est résolu !!
0
Rejoignez-nous