Upload de fichier php
Résolu
Coutcout86
Messages postés
195
Date d'inscription
Statut
Membre
Dernière intervention
-
Coutcout86 Messages postés 195 Date d'inscription Statut Membre Dernière intervention -
Coutcout86 Messages postés 195 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un petit soucis avec mon script PHP concernant l'upload de fichier. J'ai créé un fichier .csv et je souhaite l'uploader dans un dossier mais au moment de l'upload, il me dit que l'extension n'est pas correcte. Voici la partie de mon code :
Et je ne comprend pas d'où cela peut provenir. Pourriez-vous m'aider s'il vous plait?
Merci d'avance.
Romain.
J'ai un petit soucis avec mon script PHP concernant l'upload de fichier. J'ai créé un fichier .csv et je souhaite l'uploader dans un dossier mais au moment de l'upload, il me dit que l'extension n'est pas correcte. Voici la partie de mon code :
$dossier = $CFG->dirroot.'/tmp/'; print_object($_FILES); $fichier = basename($_FILES['listuser']['name']); print_object($fichier); $taille_maxi = 100000; $taille = filesize($_FILES['listuser']['tmp_name']); $extensions = array('csv', 'gif', 'jpg', 'jpeg'); $extension = strtolower(substr(strrchr($_FILES['listuser']['name'], '.'),1)); print_object($extension); //Début des vérifications de sécurité... if(in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau { $erreur = 'Extension correcte'; } if($taille>$taille_maxi) { $erreur = 'Le fichier est trop gros...'; } if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload { //On formate le nom du fichier ici... $fichier = strtr($fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier); if(move_uploaded_file($_FILES['listuser']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné... { echo 'Upload effectué avec succès !'; } else //Sinon (la fonction renvoie FALSE). { echo 'Echec de l\'upload !'; } } else { echo $erreur; }
Et je ne comprend pas d'où cela peut provenir. Pourriez-vous m'aider s'il vous plait?
Merci d'avance.
Romain.
A voir également:
- Upload de fichier php
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
4 réponses
affiche ta variable extension pour y voir plus clair :)
Edit: Print_object , je connaissais pas :O [j'utilise var_dump / echo pour débug moi]
et donc, qu'est-ce que ça t'affiche ?
Edit: Print_object , je connaissais pas :O [j'utilise var_dump / echo pour débug moi]
et donc, qu'est-ce que ça t'affiche ?
La fonction print_object est une fonction que j'ai créé moi même c'est pour cela que tu connais pa ;) ! Ensuite j'ai fait un prin_object (ou var_dump) de ma variable extension et j'ai comme résultat : csv . Donc cela devrait fonctionner correctement non ?!
Huuuum, ça devrait fonctionner en effet..
je n'ai rien pour tester d'ou je suis
je regarderai se soir (vers 18H) si personne ne trouve d'ici là
c'est bien tout in_array() qui renvoie faux hein ?
pour tantton tableau contient bien 'csv' et l'extension que tu recupères est 'csv', lowcase, ça c'est bon
... je verrais bien :P
je n'ai rien pour tester d'ou je suis
je regarderai se soir (vers 18H) si personne ne trouve d'ici là
c'est bien tout in_array() qui renvoie faux hein ?
pour tantton tableau contient bien 'csv' et l'extension que tu recupères est 'csv', lowcase, ça c'est bon
... je verrais bien :P