Bonjour j'essaye d'uploader une image et je n'y arrive pas, je suis en local sous wamp, j'ai le message "erreur d'upload", je ne vois pas d'ou ca vient, peut etre le chemin pour placé l'image mais j ai essayé de mettre un chemin relatif ou absolue et cela ne change rien, si quelqu un peut m'aider;
mon chemin pour aller jusqu' a la page de formulaire:
C:\wamp\www\monSite\site\formulaire.php
pour y acceder :
www.site.com/formulaire.php
Formulaire
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <form method="post" action="" enctype="multipart/form-data"> <label for="image1">Image 1 :</label> <input type="file" name="image_1" id="image1" /> <input type="submit" name="Ajouter" value="Ajouter" /> </form>
Traitement (sur la mm page)
Quand je fais un "print_r($_FILES);"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 if((isset($_FILES['image_1']))&&($_FILES['image_1']['error']==0)){ // Il y a l'image et pas d'erreur. if($_FILES['image_1']['size']<=125000){ // Si l'image n'est pas trop gros. // Testons si l'extension est autorisée $infosfichier= pathinfo($_FILES['image_1']['name']); $extension_upload=$infosfichier['extension']; $extensions_autorisees= array('jpg', 'jpeg'); if(in_array($extension_upload,$extensions_autorisees)){ // On peut valider l'image et la stocker définitivement $transfert = move_uploaded_file($_FILES['image_1']['tmp_name'], 'uploads/'. basename($_FILES['image_1']['name'])); if(!$transfert) {trigger_error("erreur d'upload"); $err='Erreur move_upload_file( )';} }else{ // Probleme l'extension n'est pas la bonne. $err='Probleme l\'extension de l\'image n\'est pas la bonne.'; } }else{ // Probleme l'image est trop grosse. $err='L\'image est trop grosse.'; } } echo $err;
Une petite idée ?Array ( [image_1] => Array ( [name] => bloublou.jpg [type] => image/jpeg [tmp_name] => C:\wamp\tmp\php10B8.tmp [error] => 0 [size] => 75568 ) )
J'ai testé le cote ci dessous, le fichier ce crée bien, mais tjrs la même erreur, l'image ne de deplace pas, dans la configuration de php sur wamp, "file uploads" est bien coché..
J'ai testé un autre code que j'ai vu ailleur et la ca bloque a "if(is_uploaded_file($_FILES['image_1']['tmp_name']))" donc j ai le message 'Problème : Attaque possible par le fichier ';
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 mkdir('fichier/stock/', 0777, true); $transfert = move_uploaded_file($_FILES['image_1']['tmp_name'], 'fichier/stock/'. basename($_FILES['image_1']['name']));
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 if((isset($_FILES['image_1']))&&($_FILES['image_1']['error']==0)){ // Il y a l'image et pas d'erreur. if($_FILES['image_1']['size']<=125000){ // Si l'image n'est pas trop gros. // Testons si l'extension est autorisée $infosfichier= pathinfo($_FILES['image_1']['name']); $extension_upload=$infosfichier['extension']; $extensions_autorisees= array('jpg', 'jpeg'); if(in_array($extension_upload,$extensions_autorisees)){ // On peut valider l'image et la stocker définitivement if(is_uploaded_file($_FILES['image_1']['tmp_name'])) { if (!move_uploaded_file($_FILES['image_1']['tmp_name'], '/m1/m2/'. basename($_FILES['image_1']['name']))) { $err='Problème : Impossible de déplacer le fichier dans son répertoire de destination'; } } else { $err='Problème : Attaque possible par le fichier '; } }else{ // Probleme l'extension n'est pas la bonne. $err='Probleme l\'extension de l\'image n\'est pas la bonne.'; } }else{ // Probleme l'image est trop grosse. $err='L\'image est trop grosse.'; }
Partager