Maison  >  Article  >  développement back-end  >  Pourquoi CodeIgniter rejette-t-il mes fichiers WMV même si j'ai spécifié les types de fichiers autorisés ?

Pourquoi CodeIgniter rejette-t-il mes fichiers WMV même si j'ai spécifié les types de fichiers autorisés ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-31 11:19:29878parcourir

Why Does CodeIgniter Reject My WMV Files Even Though I Specified Allowed File Types?

CodeIgniter : résolution du problème de téléchargement « Type de fichier non autorisé »

Dans ce scénario de téléchargement CodeIgniter, les utilisateurs sont confrontés à une erreur indiquant que la tentative de téléchargement le type de fichier n’est pas autorisé. Malgré la spécification des types de fichiers autorisés dans le contrôleur, certains formats de fichiers, tels que les vidéos WMV, ne parviennent pas à être téléchargés.

Pendant le processus de téléchargement, CodeIgniter tente de déterminer le type MIME du fichier. Cependant, dans certains cas, Firefox ou d'autres navigateurs peuvent interpréter de manière incorrecte l'extension de fichier comme étant de type MIME. Cela peut conduire à l'erreur « type de fichier non autorisé » lorsque le type MIME n'est pas reconnu dans la configuration.

Pour résoudre ce problème, nous pouvons inspecter le type MIME détecté pour le fichier téléchargé en ajoutant la ligne suivante à la méthode upload() du contrôleur :

<code class="php">$this->_file_mime_type($_FILES[$field]); var_dump($this->file_type); die();</code>

Après avoir téléchargé un fichier WMV, il affichera le type MIME détecté. Par exemple, il peut afficher application/octet-stream, qui n'est pas inclus dans la configuration des types MIME autorisés.

Pour résoudre le problème, ajoutez le type MIME détecté au fichier de configuration mimes.php :

<code class="php">'wmv' => array('video/x-ms-wmv', 'audio/x-ms-wmv', 'application/octet-stream')</code>

En ajoutant le type MIME correct à la configuration, CodeIgniter reconnaîtra le type de fichier WMV et autorisera son téléchargement.

Notez que la configuration du navigateur ou de la machine peut avoir un impact sur le comportement de téléchargement. Par exemple, sur certains systèmes, seuls les téléchargements AVI peuvent réussir, tandis que sur d'autres, tous les fichiers pris en charge peuvent être téléchargés. Cela suggère que le problème peut également être spécifique au navigateur ou au système.

Si l'approche de résolution de type MIME ne résout pas le problème de téléchargement, reportez-vous aux ressources suivantes pour un dépannage plus approfondi :

  • Fil du forum CodeIgniter
  • Corruption du type MIME dans Firefox
  • Contourner la modification du type MIME d'IE

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn