[Pb] - Impossible d'uploader une image

Eléphant du PHP | 103 Messages

12 juil. 2009, 17:17

Salutations,

J'ai un pb assez enquiquinant.
Je viens de mettre en place les codes suivants sur mon hébergement pro. 1and1 :

Fichier "new.php5" :

Code : Tout sélectionner

(...) <form name="formulaire_envoi_fichier" enctype="multipart/form-data" method="post" action="upload.php"> <input type="file" name="fichier_choisi" /> <br /> <br /> <input type="submit" name="bouton_submit" value="Envoyer le fichier" /> </form> (...)
Fichier upload.php :

Code : Tout sélectionner

(...) <?php //on vérifies que le champ est bien rempli: if(!empty($_FILES["fichier_choisi"]["name"])) { //nom du fichier choisi: $nomFichier = $_FILES["fichier_choisi"]["name"] ; //nom temporaire sur le serveur: $nomTemporaire = $_FILES["fichier_choisi"]["tmp_name"] ; //type du fichier choisi: $typeFichier = $_FILES["fichier_choisi"]["type"] ; //poids en octets du fichier choisit: $poidsFichier = $_FILES["fichier_choisi"]["size"] ; //code de l'erreur si jamais il y en a une: $codeErreur = $_FILES["fichier_choisi"]["error"] ; //Verification de l'existance du fichier if( !is_uploaded_file($nomTemporaire) ) { echo("Le fichier est introuvable<br />"); echo("<a href=\"new.php5\">Nouvelle tentative ?</a><br />") ; exit; } //Verification de l'extension du fichier if( !strstr($typeFichier, 'jpg') && !strstr($typeFichier, 'jpeg') && !strstr($typeFichier, 'bmp') && !strstr($typeFichier, 'gif') ) { echo("Le fichier n'est pas une image reconnue (.jpg, .jpeg, .gif, .bmp, .png)<br />"); echo("<a href=\"new.php5\">Retour</a><br />") ; exit; } //chemin qui mène au dossier qui va contenir les fichiers uplaod: $chemin = "/photos/" ; if(move_uploaded_file($nomTemporaire, $chemin . $nomFichier) ) { echo("<br />l'upload a réussi...<br /><br />") ; echo("Ne pas oublier de lancer <a href=\"gen.php\" target=\"_blank\">le générateur de vignettes</a>...<br /><br />") ; echo("<a href=\"new.php5\">Encore une image à mettre en ligne</a> ? ou <a href=\"/admin/index.php\">revenir au menu</a> ?<br />") ; } else { echo("<br />l'upload a échoué !<br />(Impossible de copier <em>".$nomFichier."</em> (alias <em>".$nomTemporaire."</em>) dans <em>".$chemin."</em> pour une raison inconnue...)<br /><br />") ; echo("<a href=\"new.php5\">Nouvelle tentative ?</a><br />") ; } }//fin if else { echo("Vous n'avez pas choisit de fichier !!<br /><br />") ; echo("<a href=\"new.php5\">Retour</a><br />") ; }//fin else ?> (...)
J'ai le droit à mon message d'erreur personnalisé par la boucle if :
l'upload a échoué !
(...)
Et il n'y a aucun upload d'effectué... :(

Any idea sur mon erreur ?

A vous lire...

Eléphant du PHP | 369 Messages

12 juil. 2009, 18:06

Salutations,
J'ai un pb assez enquiquinant.
Je viens de mettre en place les codes suivants sur mon hébergement pro. 1and1 :
[...]
Salut,
J'ai brièvement regardé ton code (très rapidement...hein, donc pas sur que ca marche)
Essai de mettre un point sujste avant le slash.
PHP pointant de fait sur la racine, on sait jamais.

Ton code:
//chemin qui mène au dossier qui va contenir les fichiers uplaod: 
$chemin = "/photos/" ;
Ma suggestion:
//chemin qui mène au dossier qui va contenir les fichiers uplaod: 
$chemin = "./photos/" ;
J'ai le droit à mon message d'erreur personnalisé par la boucle if :
l'upload a échoué !
(...)
Et il n'y a aucun upload d'effectué... :(
Any idea sur mon erreur ?
A vous lire...
Désolé si ce n'est ca, je ne fais que passer la, bon code @+ ;)

Eléphant du PHP | 103 Messages

12 juil. 2009, 18:14

(...)Essai de mettre un point sujste avant le slash.(...)
Merci de ton aide.
Malheureusement, non, ça c'est une photo de frappe lors de la saisie sur PHPFrance.
En effet, il y a à cet emplacement l'url complète.

Mammouth du PHP | 693 Messages

12 juil. 2009, 20:34

Tu as mis une URL ou un chemin d'accès ?

Parce que lorque tu manipule des fichiers, il faut mettre des chemins d'accès.

Eléphant du PHP | 103 Messages

12 juil. 2009, 23:44

Tu as mis une URL ou un chemin d'accès ?

Parce que lorque tu manipule des fichiers, il faut mettre des chemins d'accès.
J'ai corrigé l'url, et j'ai mis le chemin "../pict/photos/", et cela fait pareil... :(

Eléphant du PHP | 447 Messages

13 juil. 2009, 07:46

Reprends tout à zéro, si tu ne comprends pas ton code et que tu ne sais pas ce qu'il fait et donc où peuvent se trouver des erreurs autant recommencer sur une autre base....

au hasard:

http://damienalexandre.fr/Upload-d-image-en-PHP.html
Probably (only a) Human Problem?

Eléphant du PHP | 369 Messages

13 juil. 2009, 08:52

[...]
J'ai corrigé l'url, et j'ai mis le chemin "../pict/photos/", et cela fait pareil... :(
Salut,

Que donne un echo sur ton file_path?
Faisant ca, ca te permetra déja d'y voir plus clair.

Bon code @+ ;)

PS: Essaie (si ca ne marche toujours pas) un appel direct sur un fichier en passant par http://server...

Eléphant du PHP | 103 Messages

13 juil. 2009, 10:59

Salutations,

Merci à tous, grosses boulette de ma part... :-(

../../pict/photos/ et non ../pict/photos/ ...

Ça marche nickel, merci à vous tous...