Upload de fichier (chgm de fichier tmp)

Upload de fichier (chgm de fichier tmp) - PHP - Programmation

Marsh Posté le 12-06-2006 à 15:18:02    

Kikou tout le monde,  
voila j'ai un petit soucis que je n'arrive pas à résoudre.
J'ai une fonction d'upload de fichier totalement basique, mais le seul soucis c'est que le fichier tmp de mon serveur n'a pas les droits nécessaires pour que je puisse y accéder.
J'ai donc essayer de bidouiller pour avoir un fichier tmp que j'aurais créé avec les bons droits.  
Seulement ça ne marche pas..
 
Voici mon code
 

Code :
  1. // Pour raison de sécurité nous ajouterons aux fichiers
  2.     // portant une extension .php .php3, l'extension .txt
  3.     if (eregi(".php", $nomDestination)) {
  4.         $nomDestination .= ".txt";
  5.     }
  6.   // pareil avec les .exe
  7.     if (eregi(".exe", $nomDestination)) {
  8.         $nomDestination .= ".txt";
  9.     }
  10.     /* on créer une chaine aléatoire pour le fichier temporaire */
  11.     $chaine = "abBDEFcdefghijkmnPQRSTUVWXYpqrst23456789"; //String valid
  12.     $pass = '';
  13. srand((double)microtime()*1000000);
  14. for($i=0; $i<6; $i++) { //mot de passe de 6 caractères
  15.       $pass .= $chaine[rand()%strlen($chaine)];
  16.    // on créer donc le nouveau fichier tempo avec le new nom
  17.  $_FILES['image']['tmp_name'] = "gnagnagna/public_html/tmp/php".$pass;
  18.    
  19. // tentative d'upload de la bete
  20. $uploaddir = '/home/etud/leboncheminaprès'; // repertoire de destination
  21. $uploadfile = $uploaddir . basename($_FILES['image']['name']);
  22. echo $_FILES['image']['tmp_name'];
  23. echo "<br>".$uploadfile;
  24. if (move_uploaded_file($_FILES['image']['tmp_name'], $uploadfile)) {
  25.    echo "Le fichier est valide, et a été téléchargé
  26.            avec succès. Voici plus d'informations :\n";
  27. } else {
  28.    echo "Attaque potentielle par téléchargement de fichiers.
  29.          Voici plus d'informations :\n";
  30. }
  31. echo 'Voici quelques informations de déboguage :';
  32. print_r($_FILES);


 
Mon seul soucis, pas de message d'erreur, mis à par le else "Attaque potentielle par téléchargement de fichiers"
Les info du $_FILES me semblent pourtant correcte.  
 

Code :
  1. (
  2.     [image] => Array
  3.         (
  4.             [name] => rugby11.jpg
  5.             [type] => image/jpeg
  6.             [tmp_name] => gnagnagna/public_html/tmp/phpn7eY85
  7.             [error] => 0
  8.             [size] => 150701
  9.         )
  10. )


 
Si vous pouvez donc m'aider please....
Merci d'avance.  
 [:magnasuprema]

Reply

Marsh Posté le 12-06-2006 à 15:18:02   

Reply

Marsh Posté le 12-06-2006 à 17:51:29    

up :)

Reply

Marsh Posté le 12-06-2006 à 19:03:57    

Déjà, je doute que modifier $_FILES['image']['tmp_name'] soit une fantastique idée. [:figti]
 
Je vois pas comment tu pourrais ne pas avoir accès en lecture à ton upload_tmp_dir.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 13-06-2006 à 09:18:46    

Le soucis c'est que je suis à l'iut et que l'admin à eu la bonne idée de ne pas mettre les droits qu'il faut sur le tmp, donc je suis ennuyé..
En quoi le fait de changer le répertoire temporaire est t'il une mauvaise idée?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed