IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Upload d'images


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 28
    Par défaut Upload d'images
    Bonsoir,

    Je viens tout juste, de terminer mon script pour uploader les images, cependant il y a quelques petites erreurs que je n'arrive pas à résoudre, c'est pour cela que je viens vous demander de l'aide.

    Donc voici ce que je veux faire :

    Les membres peuvent envoyer une image de 40*40 pixels et qui ne dépasse pas les 25 000 octets, et qui ensuite s'affiche en dessous de mon formulaire pour envoyer l'image.

    Voici mon code php :

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    <?php
    // CONFIG
    $UploadFolder = 'upload/';
    $Extensions = array (".jpg", ".gif", ".bmp", ".png");
     
    $max_filesize = 25000;
    $max_filesize_kb = ($max_filesize / 1024);
    $maxwidth = 40;
    $maxheight = 40;
     
    // SCRIPT
     
    // Si le dossier d'upload existe pas
    if(!is_dir($UploadFolder)){
      echo 'Le dossier où sont sauvegardés les fichiers n\'a pas été trouvé.<br />
      Veuillez créer un dossier nommé '.$UploadFolder.' ou changer le nom de celui-ci pour un existant dans la section de configuration.';
      exit;
    }
     
    // Si le dossier est pas en CHMOD 777
    if(!is_writable($UploadFolder)){
      echo 'Le programme ne possède pas les permissions nécessaires sur le dossier où sont sauvegardés les fichiers. <br />
      Veuillez le mettre en CHMOD 777.';
      exit;
    }
     
    if(isset($_POST['form2']) AND !empty($_POST['form2'])){
      if(isset($_FILES['nom_du_fichier'])){
     
     
        // On gère les erreurs ici
     
     
        if($_FILES['nom_du_fichier']['size'] > $max_filesize){
          echo  "Le fichier excède la taille permise par le programme.";
          exit; // On stop le script
        }
     
        if ($_FILES['nom_du_fichier']['error']) {
          switch ($_FILES['nom_du_fichier']['error']){
            case 1: // UPLOAD_ERR_INI_SIZE
              $errorfiles = "Le fichier excède la taille permise par le serveur.";
            break;
            case 2: // UPLOAD_ERR_FORM_SIZE
              $errorfiles =  "Le fichier excède la taille permise par le programme.";
            break;
            case 3: // UPLOAD_ERR_PARTIAL
              $errorfiles =  "Le transfert à été intérrompu !";
            break;
            case 4: // UPLOAD_ERR_NO_FILE
              $errorfiles =  "Aucun fichier n'a été sélectionné.";
            break;
          }
          echo $errorfiles;
          exit; // On stop le script
        }
     
         $imagesize = getimagesize($_FILES['nom_du_fichier']['tmp_name']);
         $imagewidth = $imagesize[0];
         $imageheight = $imagesize[1];
     
         if(($imagewidth > $maxwidth) OR ($imageheight > $maxheight)){
          echo 'Les dimension de votre image ne doivent pas éxéder '.$maxwidth.'px par '.$maxheight.'px.';
          exit; // On stop le script
         }
     
         if(move_uploaded_file($_FILES['nom_du_fichier']['tmp_name'], $fullname)) {
           echo '<img src="'.$fullname.'" />';
         }else{
           echo 'Le serveur n\'a pas pus répondre à votre demande.';
         }
       }
      }
    ?>
    Et voici mon formulaire :

    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
    <fieldset style="margin:10px;">
    	<table width=502 height=381>
    <tr>
    <td align="center" valign="top">
     
     
    <form method="POST" action="traitement.php" enctype="multipart/form-data" name="f">
    <input type="hidden" name="form2" value="form2">
    Fichier <br />
    <input type="file" name="nom_du_fichier">  <br /><br />
    <input type="submit" name="send" value="Envoyer!">
    </form>
     
    </td>
    </tr>
    </table>
    et voici mon message d'erreur :

    Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/www/tmp/phpG2QsV3' to '' in function secured by the Olympe PHP module on line 1
    Le serveur n'a pas pus répondre à votre demande.
    Merci d'avance,

    Bonne soirée

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Bonjour,

    $fullname n'est pas définie.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 28
    Par défaut
    A oups
    Je ne sais pas trop comment faire là, je viens de rajouter cela :

    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
    26
    <fieldset style="margin:10px;">
    	<table width=502 height=381>
    <tr>
    <td align="center" valign="top">
     
     
    <form method="POST" action="traitement.php" enctype="multipart/form-data" name="f">
    <input type="hidden" name="form2" value="form2">
    Fichier <br />
    <input type="file" name="nom_du_fichier">  <br /><br />
    <input type="submit" name="send" value="Envoyer!">
    </form>
     
    <?php
     
    //Une fois qu'on a envoyé l'image et qu'elle est correct on l'affiche :
     
    echo'<img src="'.$fullname.'" />';
     
    ?>
     
    </td>
    </tr>
    </table>
     
    </fieldset>

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Je ne vois pas bien le rapport ...
    Dans ton premier script tu deplaces ton fichier recu vers $fullname mais tu n'as pas donné de valeur à $fullname.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 28
    Par défaut
    Bah dans mon script php, on envoi le fichier $fullname le récupère et ensuite, sur mon deuxième script $fullname affiche l'image uploadé

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Regarde dans tes fichiers quand tu utilises $fullname et tu verras que nulle part tu ne lui donnes de valeur.
    $fullname dans ton script doit etre la destination (repertoire/nom) du fichier recu via le formulaire, sur ton serveur.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Réponses: 4
    Dernier message: 09/12/2005, 22h17
  2. Uploader une image à partir d'un formulaire ?
    Par netwebzone dans le forum Langage
    Réponses: 2
    Dernier message: 28/11/2005, 09h27
  3. [Upload] Upload d'image....
    Par tochbee dans le forum Langage
    Réponses: 3
    Dernier message: 21/11/2005, 11h44
  4. [Debutant] [JSP/Servlet] Upload d'image vers le serveur
    Par ShinJava dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 05/07/2005, 17h42
  5. Upload d'images sur le forum
    Par KibitO dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 2
    Dernier message: 09/10/2004, 23h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo