Bonjour à tous,
Je souhaite uploader un fichier à partir d'un formulaire html. Je gère ensuite la sauvagarde du fichier avec php.
Le soucis c'est que durant cette dernière phase, il m'indique les erreurs suivantes :
Warning: move_uploaded_file(C:\Documents and Settings/#004VR/Bureau/D-H/AT1_3857.JPG): failed to open stream: No such file or directory
Warning: move_uploaded_file(): Unable to move 'C:\WINNT\TEMP\php4D30.tmp' to 'C:\Documents and Settings/#004VR/Bureau/D-H/AT1_3857.JPG'
Voici la partie du formulaire permettant l'upload :
Code :
- <input type=hidden name=MAX_FILE_SIZE VALUE=4000000>
- Fichier : <input type=file name="fichier">
|
Je tiens à préciser que j'ai bien mis dans les attributs de la balise form l'attribut ENCTYPE="multipart/form-data"
Voici mon code php qui gère les erreurs et l'enregistrement du fichier temporaire vers le dossier cible :
Code :
- $content_dir = 'C:\Documents and Settings/#004VR/Bureau/D-H/'; // dossier où sera déplacé le fichier
- $tmp_file = $_FILES['fichier']['tmp_name'];
- if( !is_uploaded_file($tmp_file) )
- {
- exit("Le fichier est introuvable" );
- }
- // on vérifie maintenant l'extension
- $type_file = $_FILES['fichier']['type'];
- if( !strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'bmp') && !strstr($type_file, 'gif') && !strstr($type_file, 'pdf') && !strstr($type_file, 'ppt') && !strstr($type_file, 'doc') && !strstr($type_file, 'xls') )
- {
- exit("L'extension du fichier n'est pas accepté" );
- }
- // on copie le fichier dans le dossier de destination
- $name_file = $_FILES['fichier']['name'];
- if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
- {
- exit("Impossible de copier le fichier dans $content_dir" );
- }
|
Si je fais un var_dump de $_FILE aucune erreur n'est retournée ! Pour infos voici le résultat du var_dump :
Code :
- array(1) {
- ["fichier"]=>
- array(5) {
- ["name"]=>
- string(12) "AT1_3857.JPG"
- ["type"]=>
- string(11) "image/pjpeg"
- ["tmp_name"]=>
- string(25) "C:\WINNT\TEMP\php4D30.tmp"
- ["error"]=>
- int(0)
- ["size"]=>
- int(1608970)
- }
- }
|
Si quelqu'un a la solution je suis preneur.
Merci à tous