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] Problème de création d'un dossier d'images


Sujet :

Langage PHP

  1. #1
    Membre averti Avatar de mLk92
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    527
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 527
    Points : 305
    Points
    305
    Par défaut [Upload] Problème de création d'un dossier d'images
    Hi all !

    Je suis en train de refaire un formulaire d'ajout d'info avec un upload d'images, tout fonctionne ormis les images...
    J'arrive a créer le dossier où sera placé l'image et à insérer l'url d'où l'image sera appelé et mon seul problème intervient soit au niveau de la création des images soit au niveau de l'upload/enregistrement.

    voici le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $mappicture=$_FILES['mappicture']['name'];
    $extpicture=$_FILES['extpicture']['name'];
    $dirPics="../objets/pics/$ID/";
    $dirPics2="pics/$ID/";
    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
    if (("$extpicture" != "")&&("$mappicture" != "")){
      umask (000);
      if (mkdir("../objets/pics/$ID",0777)){
        $urlMapPicture=$dirPics2.$mappicture;
        $urlExtPicture=$dirPics2.$extpicture;
     
        $query4="UPDATE boat SET extpicture=\"$urlExtPicture\", mappicture=\"$urlMapPicture\" WHERE ID=$ID";					
        copy($mappicture,$dirPics.$mappicture);
        $size=GetImageSize ("../objets/$urlMapPicture");
        $tall=ImageCreateFromPng("../objets/$urlMapPicture");
        $little=ImageCreate ($size[0] / 2, $size[1] / 2);
        ImageCopyResized ($little, $tall, 0, 0, 0, 0, $size[0] / 2, $size[1] / 2, $size[0], $size[1]);
        ImagePng ($little, "../objets/pics/tipicture/$ID.png");
        ImageDestroy ($tall);
        ImageDestroy ($little);	
     
        unlink($mappicture);
     
        copy($extpicture,$dirPics.$extpicture);
        unlink($extpicture);
        $result=mysql_query ($query4, $mysql_link);
        if (!$result) {
         die('Requête 4 invalide : ' . mysql_error());
         }
        print("<script language=javascript>
            window.location.href='admin.php3';
             </script>");
       }else{
           echo "y'a un probleme 1";
       }
    }
    D'où pourrai venir le problème selon vous ? (personnellement j'ai un doute sur la fonction copy() )

    Merci pour vos réponses !!!
    " Can't take your slogans no more, no more sweet talk from the hypocrits " by Robert Nesta Marley

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Points : 1 357
    Points
    1 357

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Il nous manque des étapes notamment celle de l'appel à la fonction move_uploaded_file. Vous le savez peut être déjà mais $_FILES['mappicture']['name'] correspond au nom du fichier tel qu'il était sur le client et non à son arrivée sur le serveur où il prend un nom temporaire (dans un répertoire temporaire) : $_FILES['mappicture']['tmp_name']

    Avez-vous des messages d'erreur sur les appels à ImageCreateFromPng et GetImageSize ?

    Pour éliminer un problème de transmission au niveau du formulaire (souvent un oubli de enctype="multipart/form-data"), affichez tout simplement le contenu du tableau $_FILES :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo '<pre>';
    print_r($_FILES);
    echo '</pre>';
    Qui devrait vous afficher quelque chose comme :
    Code X : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Array (
        [mappicture] => Array (
            [name] => ...
            [tmp_name] => ...
            [error] => ...
            [size] => ...
            [type] => ...
        )
        [extpicture] => Array (
            la même chose que mappicture
        )
    )

    Enfin, comparez votre manière de procéder à celle de l'article Upload de fichiers en PHP.

Discussions similaires

  1. [Batch] Problème de création automatique de dossiers
    Par vinvol dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 01/03/2013, 14h13
  2. Création d'un dossier lors de l'upload
    Par kev484 dans le forum Langage
    Réponses: 7
    Dernier message: 19/11/2008, 14h15
  3. VBS & ADSI Probléme de création de "dossier de base"
    Par greginstant dans le forum VBScript
    Réponses: 0
    Dernier message: 22/10/2008, 19h00
  4. Problème de création de dossier
    Par J-P-B dans le forum Web
    Réponses: 2
    Dernier message: 19/03/2007, 17h12
  5. Réponses: 21
    Dernier message: 09/04/2006, 23h13

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