Aller au contenu

uploader une image


ran-tan-plan

Messages recommandés

Posté(e)

Hello,

alors mon probleme est le suivant:

J'utilise un formulaire avec la case <input type=\"file\" size=\"30\" name=\"avatar_upload\" /> pour sélectionner une image.

pour ce qui est de la copie, j'utilise la fonction copy() de php ce cette manière

copy($_POST['avatar_upload'], "G:\server\www\guilde\v1\cache\avatars\\".$_POST['avatar_upload']);

pour tester, je tente d'uploader une image (03.jpg) située sur mon bureau.

et j'obtiens le message d'erreur suivant:

Warning: copy(03.JPG): failed to open stream: No such file or directory in G:\server\www\guilde\v1\sources\edit_profile.php on line 107

alors la je me dis que j'ai pas vraiment compris comment utiliser soit la fonction copy() soit le input de type file. Peut être pouvez vous m'aider?

Posté(e)

oui c'est normal les \\, c'est pasque je met l'image dans le dossier \avatar\

j'ai essayé la fonction rename() et ca me donne une erreur comme ca:

Warning: rename(03.JPG,G:\server\www\guilde\v1\cache\avatars\03.JPG): No such file or directory in G:\server\www\guilde\v1\sources\edit_profile.php on line 107

si je force l'url d'une image, par exemple http://localhost/30.jpg ca marche très bien.

A mon avis il reprend mal l'image envoyée par le formulaire.

Posté(e)

Je crois pas qu'il faille utiliser $_POST pour les fichiers. (Voir ici)

<html>
   <body>
       <form enctype="multipart/form-data" action="fileupload.php" method="post">
           <input type="hidden" name="MAX_FILE_SIZE" value="100000" />
           Transfère le fichier <input type="file" name="monfichier" />
           <input type="submit" />
       </form>
   </body>
</html>

<?php
   $repertoireDestination = "repertoirebidon/";
   $nomDestination        = $_FILES["monfichier"]["name"];

   // Pour raison de sécurité nous ajouterons aux fichiers
   // portant une extension .php .php3, l'extension .txt
   if (eregi(".php", $nomDestination)) {
       $nomDestination .= ".txt";
   }
   
   if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {
       if (rename($_FILES["monfichier"]["tmp_name"],
                  $repertoireDestination.$nomDestination)) {
           echo "Le fichier temporaire ".$_FILES["monfichier"]["tmp_name"].
                " a été déplacé vers ".$repertoireDestination.$nomDestination;
       } else {
           echo "Le déplacement du fichier temporaire a échoué".
                " vérifiez l'existence du répertoire ".$repertoireDestination;
      }          
   } else {
      echo "Le fichier n'a pas été uploadé (trop gros ?)";
   }
?>

Posté(e)

Oui, je te conseille d'utiliser aussi les variables $_FILES inclut à Php, qui te permettent d'avori en plus pas mal de renseignements; et donc de controler pas mal de choses.

(genre le type de fichier que tu veux uploader, etc...)

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...