Nom de fichier TRONQUER lors de l'upload PHP.

Fermé
hoppl - 31 janv. 2008 à 18:14
 Alain42 - 31 janv. 2008 à 21:04
Bonjour,

J'ai réussi à faire fonctionner un code pour uploader des fichiers (mp3 dans mon cas).
Tous fonctionne sauf un petit désagrément: PHP ou MySQL enlève tous ce qui se trouve dans le nom du fichier si il y a un apostrophe...

Voici mon code HTML:
<form action="audio_add_db.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="2097152" accept="audio/mpeg"/>
...
<input name="fichier" type="file" value="fichier" id="fichier" size="60" />
...
<input type="submit" value="Ajouter cette archive audio">
</form>


Et mon code PHP:
$filetypes = array ('audio/mpeg');
if (in_array($_FILES['fichier']['type'], $filetypes)){
	$audio_name = $_FILES['fichier']['name'];
	$audio_uploaddir = "archives/";
	if (move_uploaded_file($_FILES['fichier']['tmp_name'], $audio_uploaddir.$audio_name)) {
		echo $audio_uploaddir.$audio_name;
		exit;
	} else {
		 echo 'Le téléchargement n\'a pas réussi.';
		 exit;
	}
} else {
	 echo 'Assurer vous d\'uploader fichier de type mp3.';
	 exit;
}


Tout fonctionne sauf qu'il renomme le nom du fichier qu'il upload en enlevant tous caractères devant un apostrophe.
Quelqu'un a une idée comment empêcher ça.?
Merci
A voir également:

1 réponse

passes par la fonction addslashes($audio_name)
-1