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] image uploadée mais n'apparait pas dans le répertoire


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 15
    Points : 14
    Points
    14
    Par défaut [Upload] image uploadée mais n'apparait pas dans le répertoire
    Bonjour,

    Je me retrouve face à un problème étrange :

    J'ai un script d'upload qui fonctionne bien sur mon espace d'hébergement, mais qui rencontre un sérieux problème chez un autre hébergeur.

    L'upload se fait bien car j'arrive à récupérer le nom du fichier temporaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    echo "<b>".$_FILES['ma_photo']['tmp_name']."</b>";
    // renvoie : /tmp/phpRAeIIK
    ?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    echo "<b>".$_FILES['ma_photo']['error']."</b>";
    // renvoie : 0
    ?>
    C'est au moment de déplacer l'image que rien ne se produit :

    J'ai un répertoire "images" à la racine.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    echo "<b>".$_SERVER['document_root']"</b>";
    // renvoie : /var/www/html/utilisateur/
    ?>
    Le chemin absolu de mon répertoire devrait donc être :

    /var/www/html/utilisateur/images/

    Lorsque je veux déplacer mon fichier temporaire uploadé je fait (en simplifiant) :

    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
     
    <?php
    $dest_dossier = "/var/www/html/utilisateur/images/";
    $dest_fichier = "mon_fichier.jpg";
     
    if (move_uploaded_file($_FILES['ma_photo']['tmp_name'], $dest_dossier . $dest_fichier))
    {
    echo " <b>téléchargement ok <b>";
    }
    else
    {
    echo "<b>Erreur de déplacement</b>";
    }
    // renvoie : Erreur de déplacement
    ?>
    J'ai essayé les chemins suivants :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?php
    $dest_dossier = "/var/www/html/utilisateur/images/";
    $dest_dossier = "var/www/html/utilisateur/images/";
    $dest_dossier = "/var/www/html/utilisateur/images";
    // et les chemins relatifs aussi (mon script est dans un répertoite "/var/www/html/utilisateur/maintenance")
    $dest_dossier = "../images";
    $dest_dossier = "../images/";
     
    ?>
    Je n'y comprend rien du tout

    en faisant un phpinfo(), j'obtient :

    file_uploads : on
    upload_max_filesize : 15M
    upload_tmp_dir : no value
    post_max_size : 8M

    Impossible de déplacer le fichier uploadé. Il n'y a pas d'erreur dans mon script qui fonctionne très bien sur un autre hébergeur.

    1 ) Quelle peut être mon erreur (si il y en a une).
    2 ) Est-il possible que le problème vienne de la configuration serveur (je n'ai pas accès au php.ini).

    Merci d'avance, je m'arrache les cheveux...

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Février 2005
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 154
    Points : 144
    Points
    144
    Par défaut
    il faut d'abord utiliser

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(!@is_uploaded_file($nomTemporaire)){
        echo "Le fichier est introuvable";
        exit;
    }
    il me semble et apres utiliser move_uploaded_file() ; je fais comme ca pour mon upload et ca marche (le chemin n'est pas depuis la racine du serveur dans mon script pour info)

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 15
    Points : 14
    Points
    14
    Par défaut [résolu]

    Merci pour la réponse mais il y avait en fait un problème d'autorisation sur le répertoire "images". Le passage en CHMOD 777 a résolu mes soucis.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. L'image n'apparait pas dans le Jpanel
    Par denoth dans le forum Interfaces Graphiques en Java
    Réponses: 0
    Dernier message: 17/10/2009, 21h23
  2. Réponses: 2
    Dernier message: 24/09/2008, 21h35
  3. [CKEditor] upload image flash mais pas file ?
    Par Maoul dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 27/06/2008, 17h54
  4. [Upload] images uploadées réussi mais ..
    Par body72 dans le forum Langage
    Réponses: 4
    Dernier message: 07/04/2008, 20h15
  5. Réponses: 4
    Dernier message: 15/01/2004, 23h53

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