Problème avec l'upload .

Problème avec l'upload . - PHP - Programmation

Marsh Posté le 01-06-2005 à 03:02:43    

voila, j'ai un script qui (avec un formulaire html) upload un ficheir dans le repertoire que je souhiate.
cela marche impec, sauf que le nom du fichier n'est pas toujours correcte.
en effet,lorsque j'upload un fichier avec un ' dedan, le nom du fichier sur le serveur seracouper.en fait,il n'y  aura pas tout ce qui etait avant le ' .
 
exemple:
je veux uploader General O'neill.sgc
sur mon serveur, mon fichier aura pour nom : neill.sgc exit le debut du nom du fichier.
 
je prend le nom du ficheir avec cette variable : $_FILES['monfichier']['name']
monfichier etant le nom du input file dans le formulaire.
cette variable renvoi le nom tronquer.
immpossible d'avoir le debut du non. les addslashes ou stripslashes n'y font rien.
 
j'ai l'impression que le debut du nom n'est meme pas stoké dans la variable.
 
que fair ?

Reply

Marsh Posté le 01-06-2005 à 03:02:43   

Reply

Marsh Posté le 01-06-2005 à 10:39:48    

Pourquoi ne pas renommer ton fichier lors de la copie sur le serveur ?

Reply

Marsh Posté le 01-06-2005 à 12:22:49    

je renom le fichier lors de la copie. enffin je pense.
voici le script.
c'est peut etre pas tres bien programer, mais le fihcier atteri bien sur le serveur. j'ai juste un problème avec le nom du fichier:
 
 

Code :
  1. $repertoireDestination = "file/";
  2.     $repertoireDestinatio  = "file/";
  3.     $nomDestination        = $_FILES['monfichier']['name'];
  4.     // Pour raison de sécurité nous ajouterons aux fichiers
  5.     // portant une extension .php .php3, l'extension .txt
  6.     if (eregi(".php", $nomDestination)) {
  7.         $nomDestination .= ".txt";
  8.     }
  9. $nomD = $nomDestination ;
  10. $nomDestination = str_replace (" ","%20",$nomDestination);
  11.     if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {
  12.     $ext = getextension ($nomDestination);
  13.     $nom = "$nomDestination" ;
  14.         if (@rename($_FILES["monfichier"]["tmp_name"],
  15.                    $repertoireDestination.$nomD)) {
  16.             echo "le fichier a bien été uploadé.";
  17.         } else {
  18.             echo "un fichier existe dejas sous se nom, changez son nom et recommencez";
  19.   print "<br>";
  20.        }

Reply

Sujets relatifs:

Leave a Replay

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