2010-01-25 3 views
1

J'utilise un script qui télécharge des fichiers sur le serveur via le composant flash. Parfois, très rarement, en essayant de télécharger des images via Firefox, je reçois l'erreur suivante: erreur d'E/S # 2038. En cherchant sur le net, je pourrais trouver la raison pour laquelle cela m'arrive vraiment. Mais j'ai trouvé la solution pour mon cas: J'ouvre IE6, fais la même chose là (les photos sont toujours téléversées sans problème) et quand j'essaye à nouveau dans le problème Firefox disparaît. Si quelqu'un a eu des problèmes similaires peut-être cela pourrait aider ou peut-être que cette indication pourrait aider quelqu'un à découvrir la cause du problème :)Télécharger le problème d'images: Erreur E/S. (Erreur # 2038)

+1

Si vous utilisez MVC et si vous utilisez la classe 'HttpPostedFile' dans le paramètre du contrôleur, cela provoque une erreur d'E/S. le remplacer par 'HttpPostedFileBase' –

Répondre

0

Si vous n'avez pas ajouté de citation autour des noms d'options, essayez de le faire. Parfois, dans IE, la citation des noms d'options résout le problème. Il serait utile si vous avez posté un exemple de code si.

1

Après plus de temps que je ne voudrais l'admettre, voici la solution. Modifiez les variables suivantes dans votre php.ini être assez grand pour gérer votre plus grand fichier:

; Maximum size of POST data that PHP will accept. 
post_max_size = 32M 

; Maximum allowed size for uploaded files. 
upload_max_filesize = 32M 

; Whether to allow HTTP file uploads. (this is on by default) 
file_uploads = On 

Comme les fichiers sont envoyés sous forme de données POST, les deux les premières variables doivent être définies. Sinon, il y aura une erreur, mais vous ne verrez pas l'erreur, sauf IO error #2038.

+3

J'ai vu cette solution, mais aucune de mes images j'ai essayé de télécharger étaient plus grandes que 1mb, donc je ne pense pas que la taille était le problème –

1

Je viens d'avoir cette erreur en utilisant également ASP.Net MVC et j'ai découvert que j'avais juste mon espace de noms de gestionnaire incorrect/missspellled dans la section de configuration web où les gestionnaires vont. HTH ...

0

J'ai résolu le problème.

Dans mon bureau, j'utilise un proxy et je dois modifier les paramètres à No Proxy.

Ou si vous ne pas utiliser de proxy, essayez de changer php.ini:

Hostname:Port localhost:0 

à:

Hostname:Port localhost:80 
0

Assurez-vous aussi que le chemin vers le serveur utilisé par le composant de téléchargement est correct. Si le chemin est un chemin relatif, essayez de le qualifier complètement. IE peut faire un peu de "magie" avec des chemins relatifs que les autres navigateurs ne peuvent pas faire, et parfois essayer le code d'un navigateur à l'autre peut modifier les choses.

De même, il pourrait s'agir d'autorisations ... et le fait d'y accéder d'abord pourrait manipuler les permissions de telle sorte que les autres navigateurs fonctionnent ensuite «correctement».