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] pb avec upload d'image


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 9
    Par défaut [Upload] pb avec upload d'image
    Bonjour à tous,

    j'ai récuperer un script d'upload d'image et je l'ai adapter à mon cas
    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
    <html>
        <head>
            <title>Upload d'une image sur le serveur !</title>
        </head>
        <body>
    <?php
    //----------------------------
    //  DEFINITION DES VARIABLES 
    //----------------------------
     
    $name=$_GET['name'];
     
     
    $target     = "vignettes/".$name.".jpg";  // Repertoire cible
    $extension  = 'jpg';      // Extension du fichier sans le .
    $max_size   = 100000;     // Taille max en octets du fichier
    $width_max  = 100;        // Largeur max de l'image en pixels
    $height_max = 100;        // Hauteur max de l'image en pixels
     
    echo $target;
    //---------------------------------------------
    //  DEFINITION DES VARIABLES LIEES AU FICHIER
    //---------------------------------------------
     
    $nom_file   = $_FILES['fichier']['name'];
    $taille     = $_FILES['fichier']['size'];
    $tmp        = $_FILES['fichier']['tmp_name'];
     
    //----------------------
    //  SCRIPT D'UPLOAD
    //----------------------
     
     
    if(!empty($_POST['posted'])) {
        // On vérifie si le champ est rempli
        if(!empty($_FILES['fichier']['name'])) {
            // On vérifie l'extension du fichier
            if(substr($nom_file, -3) == $extension) {
                // On récupère les dimensions du fichier
                $infos_img = getimagesize($_FILES['fichier']['tmp_name']);
     
                // On vérifie les dimensions et taille de l'image
                if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES['fichier']['size'] <= $max_size)) {
                    // Si c'est OK, on teste l'upload
                  if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target)) {
                        // Si upload OK alors on affiche le message de réussite
                        echo '<b>Image uploadee avec succes !</b>';
     
    	                } else {
                        // Sinon on affiche une erreur système
                        echo '<b>Problème lors de l\'upload !</b><br /><br /><b>', $_FILES['fichier']['error'], '</b><br /><br />';
                    }
                } else {
                    // Sinon on affiche une erreur pour les dimensions et taille de l'image
                    echo '<b>Problème dans les dimensions ou taille de l\'image !</b><br /><br />';
                }
            } else {
                // Sinon on affiche une erreur pour l'extension
                echo '<b>Votre image ne comporte pas l\'extension .jpg !</b><br /><br />';
            }
        } else {
            // Sinon on affiche une erreur pour le champ vide
            echo '<b>Le champ du formulaire est vide !</b><br /><br />';
        }
    }
    ?>        <form enctype="multipart/form-data" action="<?php echo $PHP_SELF; ?>" method="POST">
                <b>Envoyer le fichier :</b><br /><br />
                <input type="hidden" name="posted" value="1" />
                <input name="fichier" type="file" />
                <input type="submit" value="Uploader" />
            </form>
        </body>
    </html>
    voila, quand je fait appelle au script je lui passe un argument type "upload.php?name=qqch" pour donner ce nom à l'image sur le serveur.
    Mais malheureusement je me retrouve toujours avec un fichier qui s'appelle ".jpg".
    j'en déduit que la variable $name perd sa valeur au moment de cliquer sur "uploader", mais pourquoi ?

    quoi qu'il en soit merci d'avance à ceux qui m'aideront !

  2. #2
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    BOnjour j'aurai deux questions :
    1. ton lien est-il correct, c'est-à-dire dans ton url vois-tu le contenu de name ?
    2. ton name contient pas de caractère spéciaux non plus ?
    Pourquoi cette question : Je vois aucune erreur donc forcement ...


    Hummm peut etre une mauvaise utilisation de $_GET, mets à la place :
    et je dirais même plus lol

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 9
    Par défaut
    salut Kerod
    bon je vais tester cela de suite !

    1) pour info, le liens est bon, puisque au début du code pour faire un test je fait un "echo $target;" qui est bien composé de 'name'.
    2) et non il n'y a pas de caractères spéciaux !

    Bon, cela ne change rien !

    la valeur de $name doit être efacé au moment de lancer l'upload puisqu'au début sa valeur est correcte... et la je ne voi vraiment pas où est le souci....

  4. #4
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    il y a une petite chose que je comprends pas...pourquoi tu passes en get un name alors que tu passes un fichier en post qui est jamais utilisé

    dans tes if testes un affichage de ton $name pour voir ce que ca donne...si c'est tout ce que tu as comme code ta variable devrait pas etre modifier (vu que je vois aucune redéfinition)

Discussions similaires

  1. [ZF 1.7] probléme avec upload image
    Par ghamrired dans le forum Zend Framework
    Réponses: 2
    Dernier message: 08/04/2009, 15h35
  2. Upload multiple avec insertion des noms de titre à chaque image.
    Par lemirandais dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/01/2009, 21h55
  3. Réponses: 1
    Dernier message: 23/09/2008, 21h37
  4. [Upload] Upload FTP avec image > 1Mo
    Par Invité dans le forum Langage
    Réponses: 4
    Dernier message: 05/02/2007, 13h09
  5. [Upload] bug sur upload multiple d'envoi d'images
    Par fabien14 dans le forum Langage
    Réponses: 3
    Dernier message: 13/08/2006, 12h05

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