p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Invité régulier
    Inscrit en
    juin 2004
    Messages
    12
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : juin 2004
    Messages : 12
    Points : 7
    Points
    7

    Par défaut $_FILES['userfile']['tmp_name'] != upload_tmp_dir

    Bonjour,

    j'ai un problème d'upload de fichiers.
    dans php.ini, j'ai configuré :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    upload_tmp_dir="D:\\Temp\\"
    le répertoire existe et les scripts php peuvent écrire dedans.

    Mais $_FILES['userfile']['tmp_name'] n'a pas de valeur correcte :
    var_dump( $_FILES ); donne :
    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
    array(1) {
      ["userfile"]=>
      array(5) {
        ["name"]=>
        string(18) "table_worklist.sql"
        ["type"]=>
        string(24) "application/octet-stream"
        ["tmp_name"]=>
        string(16) "D:Tempphp1E4.tmp"
        ["error"]=>
        string(1) "0"
        ["size"]=>
        string(4) "2790"
      }
    }
    $_FILES['userfile']['tmp_name'] a perdu les slashes de upload_tmp_dir. En modifiant upload_tmp_dir, $_FILES['userfile']['tmp_name'] change bien mais toujours sans slashes.
    J'ai essayé de mettre des '/', '\' et '\\', mais toujours pareil.

    Comment php interprète-t-il upload_tmp_dir ?

  2. #2
    Invité régulier
    Inscrit en
    juin 2004
    Messages
    12
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : juin 2004
    Messages : 12
    Points : 7
    Points
    7

    Par défaut

    Résolu,

    il y avait une méthode qui modifiait $_FILES :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
            function stripslashes_deep($value)
            {
                return (is_array($value) ? array_map('stripslashes_deep', $value) : stripslashes($value));
            }
            $_GET     = array_map('stripslashes_deep', $_GET);
            $_POST    = array_map('stripslashes_deep', $_POST);
    	$_FILES   = array_map('stripslashes_deep', $_FILES);
    j'ai commenté la ligne de $_FILES et l'upload marche maintenant.

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 14/03/2007, 11h39
  2. Réponses: 5
    Dernier message: 14/02/2006, 14h16
  3. Affichage de $_FILES['tmp_name'] sans enreg sur disque
    Par ToxiZz dans le forum Fichiers
    Réponses: 26
    Dernier message: 25/01/2006, 16h03
  4. Réponses: 5
    Dernier message: 08/12/2005, 20h13
  5. Réponses: 7
    Dernier message: 31/10/2005, 19h10

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