Codeigniter : Le type du fichier que vous tentez de télécharger n'est pas autorisé. Hier, c'était beau
Mon codeigniter application soudainement cassé aujourd'hui. Je n'ai pas de travail sur le code de téléchargement, et quand j'ai essayé de télécharger une image aujourd'hui, j'ai soudain eu "Le type de fichier que vous tentez de télécharger n'est pas autorisé." Hier, tout était bien.
Mon tableau de config est:
$config = array(
'file_name' => $data['slug'] .'-'. $key,
'upload_path' => './images',
'allowed_types' => 'gif|jpg|jpeg|png'
);
J'ai également essayé de définir les types autorisés que : "image/gif|image/jpg|image/jpeg|image/png', mais pas de chance.
Le dumping $this->télécharger->data() :
Array
(
[file_name] => ring.jpg
[file_type] => image/jpeg
[file_path] => /home/user/www.domain.ca/images/
[full_path] => /home/user/www.domain.ca/images/ring.jpg
[raw_name] => ring
[orig_name] =>
[client_name] => ring.jpg
[file_ext] => .jpg
[file_size] => 49158
[is_image] => 1
[image_width] =>
[image_height] =>
[image_type] =>
[image_size_str] =>
)
Je comprends qu'il y avait quelques bugs dans les versions précédentes de l'IC, mais je n'avais pas ces problèmes d'hier. Je comprends aussi que cette erreur se produit uniquement si le type MIME ne correspond pas à ce qui est autorisé, mais cela ne semble pas être le cas.
Le serveur est Apache.
Quelqu'un a une idée de ce que pourrait être le problème? Merci!
- vérifiez le format de fichier , ou de l'ouvrir à l'aide de l'image de l'éditeur de l'app et de ré-enregistrer à nouveau et essayez , aussi assurez-vous que l'id de l'extension jpg pas JPG , quelques fois qui fait la différence
- Avez-vous essayé de juste déboguer le code de CI que les questions de l'erreur, voir ce qu'il pense qui se passe?
- Pouvez-vous voir si le serveur est déjà atteint la limite des fichiers téléchargés?
Vous devez vous connecter pour publier un commentaire.
J'ai eu ce problème deux fois, voici les deux solutions qui ont fonctionné pour moi;
1 - Le type mime signalés par le système peuvent varier, et peut-être pas dans le tableau des types mime pour un extension de fichier. .les fichiers csv sont les pires que j'ai trouvé pour cela. Savoir quel type mime le système de déclaration par le dumping, le téléchargement de données après votre téléchargement
Le "file_type' indice de contenir une chaîne de caractères - l'ajouter au tableau de la valeur avec l'index qui correspond à l'extension du fichier souhaitée dans application/config/mimes.php
2 - La dernière fois que j'ai eu c'est quand j'ai mis à jour mon noyau Codeiginter version de 2.x à 3.x. J'ai mis à jour le contenu du répertoire système, mais pas de l'application/config. Je ne l'avais pas remarqué le fait que l'application/config/mimes.php fichier est légèrement différente de la version la plus récente retourne un tableau alors que l'ancien inclus comme var. Le correctif a été exemplaire dans la version la plus récente de mimes.php
Avez-vous initialiser le
$config
correctement?J'ai eu le même problème aujourd'hui.
Ce que j'ai fait est juste de copier l'ensemble du contenu de
CodeIgniter-3.0.6\application\config\mimes.php
à monapplication\config\mimes.php
.Ne sais pas si cela aide, j'ai eu ce problème sur mon Windows Dev de la Machine en cours d'exécution sur un serveur de test en local, sur mon live d'hébergement web il a bien fonctionné la détection des types mime.
J'ai eu un coup d'oeil rapide pour télécharger de la bibliothèque elle-même, et j'ai trouvé que vous pouvez simplement coller un * dans les types autorisés pour permettre quoi que ce soit.
Ne pense pas que cela a été documenté nulle part dans le manuel, mais triés le problème pour moi, je voulais juste d'obtenir mon script et en cours d'exécution en local pour faire un peu de travail sur elle.