J'utilise le code ci-dessous pour télécharger des fichiers avec une extension autorisée de moins de 5 Mo. Mais en utilisant ce code, tout doc ou pdf etc ne télécharge pas! Par exemple: un fichier docx de 4,78 Mo ou un téléphone Windows de 1,64 Mo ne télécharge pas!Le téléchargement de fichier ne fonctionne pas pour tous les fichiers
$allowedExts = array("gif", "jpeg", "jpg","png","pdf","doc","docx","txt","rtf","bmp","psd","zip","rar","ppt","pptx");
$extension = end(explode(".", $_FILES["file"]["name"]));
if (in_array($extension, $allowedExts) && $_FILES["file"]["size"]<5242880 && $_FILES["file"]["error"]<=0) {
$rand = rand(000,999);
$tempfile = $_FILES["file"]["name"];
$file = $time . "=" . $rand . "=" . $tempfile;
if(file_exists("upload/".$file)) {
header("location:home.php?error=error");
} else {
move_uploaded_file($_FILES["file"]["tmp_name"],"upload/".$file);
}
} else {
header("location:home.php?error=error"); //this gets executed for some doc or pdf files !
}
Que se passe-t-il? Quelle est l'erreur? – cHao
Il vous manque un '$' pour 'allowedExts' - cela pourrait-il être le problème? –
Voir la valeur d'extension lors de leur remontage – Gautam3164