Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3068 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Problème Upload

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème Upload

n°1289996
FlyZu
Posté le 23-01-2006 à 13:26:43  profilanswer
 

J'ai un problème lors d'upload de fichiers en utilisant PHP. Avant, j'utilisais une mandrake 10 et tout fonctionnait parfaitement. Depui, je suis passé sur Ubuntu, mais le problème c'est que la variable $_FILES['name'] ne récupère pas la bonne valeur.
 
Par exemple si j'envois le fichier suivant : /blabla/test.txt, $_FILES['name'] me retourne test.txt alors qu'avec Mandrake ca me retournait bien /blabla/test.txt, j'ai repris le même fichier de configuration PHP, donc ça vient peut-être d'Apache ? Vous auriez une petite idée?
 
FlyZu

mood
Publicité
Posté le 23-01-2006 à 13:26:43  profilanswer
 

n°1290018
skeye
Posté le 23-01-2006 à 13:44:58  profilanswer
 

http://fr2.php.net/manual/fr/features.file-upload.php


---------------
Can't buy what I want because it's free -
n°1290028
FlyZu
Posté le 23-01-2006 à 13:53:41  profilanswer
 

Et ?
 
Je ne trouve rien qui parle de mon problème :-(

n°1290037
skeye
Posté le 23-01-2006 à 13:59:03  profilanswer
 

...et à part ça tu trouveras pas grand chose sur les envois de fichiers dans la doc.
 
Je ne vois pas l'intérêt de récupérer le chemin complet d'origine, d'ailleurs...[:urd]


---------------
Can't buy what I want because it's free -
n°1290039
FlyZu
Posté le 23-01-2006 à 14:01:39  profilanswer
 

Ba en fait, l'intérêt n'est pas de récupérer le chemin d'origine, mais en fait j'utilise cette page pour uploader des fichiers dans un dossier spécifique. Par exemple, j'ai 4 programmes clients qui tournent et qui upload les fichiers sur le serveur, par exemple /1212/test.txt et /34734/test.txt. Ce que je comprends pas c'est que ça marche parfaitement sous Mandrake, mais depuis que g changé de distribution, ça ne marche plus :-(

n°1290044
skeye
Posté le 23-01-2006 à 14:03:27  profilanswer
 

euh, j'ai un doute là.
On peut voir ton bout de code qui ne fonctionne plus?


---------------
Can't buy what I want because it's free -
n°1290061
FlyZu
Posté le 23-01-2006 à 14:17:23  profilanswer
 

Code :
  1. <?php
  2. // Variable pour le répertoire du serveur  
  3. $dir = $_SERVER['DOCUMENT_ROOT'];
  4. // Type MIME autorisé
  5. $OK_type = "application/octet-stream";
  6. // Nous vérifions que le bouton Upload Files a bien été pressé
  7. if(isset($_POST['submit'])){
  8.   // Variables
  9.   $tmp_name = $_FILES['upload']['tmp_name']; // Nom du fichier temporaire
  10.   $new_name = $_FILES['upload']['name']; // Nom du fichier final
  11.   $mime_type = $_FILES['upload']['type']; // Type MIME
  12.   // Vérification du type MIME
  13.   if ($mime_type == $OK_type){
  14.     // Nous déplaçons du dossier temporaire vers le dossier final
  15.     if (!move_uploaded_file($tmp_name,$dir . $new_name))
  16.       echo "ERROR : $new_name was not uploaded";
  17.     else
  18.       echo "$new_name was uploaded sucessfully";
  19.   }
  20.   else{
  21.     // Impression d'une erreur
  22.     echo "ERROR : $new_name was not uploaded";
  23.   }
  24. }
  25. // Sinon, le bouton Upload Files n'a pas été pressé
  26. else
  27.   echo 'ERROR : button Upload Files not pressed';
  28. ?>
  29. <!-- Affichage du formulaire -->
  30. <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
  31.   <fieldset>
  32.     <legend>Upload Files</legend>
  33.     <input type="file" name="upload"/>
  34.   </fieldset>
  35.   <input type="submit" name="submit" value="Upload Files"/>
  36. </form>

n°1290065
skeye
Posté le 23-01-2006 à 14:21:14  profilanswer
 

Et l'erreur est? :??:


---------------
Can't buy what I want because it's free -
n°1290066
FlyZu
Posté le 23-01-2006 à 14:22:40  profilanswer
 

lol, avec Mandrake, $_FILES['upload']['name'] me retourne /12345/test.txt alors qu'avec Ubuntu, ça me retourne test.txt, tu comprends le problème?

n°1290077
skeye
Posté le 23-01-2006 à 14:33:43  profilanswer
 

Non. Enfin si, mais l'utilisation que tu voudrais en faire me parait incorrecte.
 
Ton problème est qu'un fichier de même nom qu'un ancien l'écrase, c'est bien ça? Si oui, c'est à ton script de le gérer...


---------------
Can't buy what I want because it's free -
mood
Publicité
Posté le 23-01-2006 à 14:33:43  profilanswer
 

n°1290081
FlyZu
Posté le 23-01-2006 à 14:35:46  profilanswer
 

Wep il l'écrase, mais bon vu que j'arrive pas à récupérer la variable correctement.


Message édité par FlyZu le 23-01-2006 à 14:37:25
n°1290085
skeye
Posté le 23-01-2006 à 14:37:32  profilanswer
 

...mais ya pas de variable en entier! [:mechant]
C'est tout à fait correct et suffisant, ce que tu obtiens!!
 
Il se passerait quoi sinon si tu uploadais à-partir d'un windows? Tu aurais des répertoires /truc/C:/.../test.txt? [:mlc]


---------------
Can't buy what I want because it's free -
n°1290088
FlyZu
Posté le 23-01-2006 à 14:40:20  profilanswer
 

Ce n'est pas correct lol, non sérieux, la requête HTTP est créée depuis une application, donc ça ne sera jamais comme ça (/truc/matchin/../test.txt). Et puis POURQUOI ça ne me retourne pas la même chose entre deux distributions?

n°1290098
skeye
Posté le 23-01-2006 à 14:48:57  profilanswer
 

Je n'ai jamais vu le comportement que tu attends nulle part...[:skeye]


---------------
Can't buy what I want because it's free -
n°1290103
FlyZu
Posté le 23-01-2006 à 14:54:25  profilanswer
 

Cool lol, alors explique-moi pourquoi dans l'exemple sur le site PHP.net ils utilisent basename pour enlever le chemin ?
 
Et pourquoi avant ça fonctionnait ?


Message édité par FlyZu le 23-01-2006 à 14:55:38
n°1290167
FlyZu
Posté le 23-01-2006 à 15:40:16  profilanswer
 

En fait, c'est logique, ce n'est pas la même version de PHP. J'imagine que c'est pour raison de sécurité que ça a été desactivé pour ne pas, par exemple, remonter dans les répertoires. T'en penses quoi skeye?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Problème Upload

 

Sujets relatifs
LWP probleme upload fichierProbléme avec un script d'upload d'images
[résolu]probleme avec $_FILES lors d'un uploadCGI: probleme html (firefox) et upload
probleme d upload photo avec safe_modeprobleme avec un script d'upload
Problème avec l'upload .Problème upload gros fichiers
problème qd j'upload un fichier via un script PHPProbleme d'upload
Plus de sujets relatifs à : Problème Upload


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR