[Upload] $_FILES est vide
Bonjour à tous,
Je suis en train réaliser un petit gestionnaire d'upload et l'upload ne fonctionne pas :
Le formulaire :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
case "ajouter" :
echo "
<form action='".$_SERVER['PHP_SELF']."?action=creer_dossier' method='post'> <br/>
<label>Nom du répertoire : </label><br/>
<input type='text' name='nom_dossier' maxlength='50' /><br/>
<input type='submit' value='Ok !' />";
break;
case "ajouter_fichier" :
echo "
<form action='".$_SERVER['PHP_SELF']."?action=upload' method='post'> <br/>
<label>Répertoire :</label>
<select name='rep'>";
//creation des options de la liste
$rep = opendir("./");
$i = 0;
while ($dossier = readdir($rep)) {
if($dossier != '..' && $dossier !='.' && $dossier !='') {
if(is_dir($dossier)){
echo "<option value='$dossier'>$dossier</option>";
}
}
}
echo "
</select>
<br/>
<label>Fichier : </label>
<input type='file' name='fichier' />
<input type='submit' value='Ok !' />";
break; |
Et voici le code d'upload j'ai mis pas mal d'echo pour voir on sa bloque et mes variables provenant du tableau $_FILE sont vide alors qu'avec le POST je reçois bien le nom du fichier.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
case "upload" :
$fichier = isset($_POST['fichier']) ? $_POST['fichier'] : '';
$rep = isset ($_POST['rep']) ? $_POST['rep'] : '';
echo "------ MES ENVOIS ------------------";
echo "<br/>je suis rentré dans mon cas d'upload";
echo "<br/> Nom di fichier reçu en POST :".$fichier;
echo "<br/> Dossier de destintation : ".$rep;
if(isset($_POST['fichier']) ) {
echo "<br/><br/>---------SCRIPT --------------";
$cheminFichier = $rep."/";
$tmp_file = $_FILES['fichier']['tmp_name'];
$type_file = $_FILES['fichier']['type'];
$name_file = $_FILES['fichier']['name'];
// echo $_FILES['fichier']['error']; NE RENVOIE PAS D ERREUR
echo "<br/>Stockage du fichier dans : ".$cheminFichier;
echo "<br/> Nom temporaire : ".$tmp_file; // VIDE
echo "<br/> Type du fichier : ".$type_file; // VIDE
echo "<br/> Nom du fichier : ".$name_file; //VIDE
break; // simplement pour afficher les result (je sais, c'est bourrin)
if( !is_uploaded_file($tmp_file) ){
exit("Le fichier est introuvable");
}
if( !strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'bmp') && !strstr($type_file, 'gif') ){
exit("Le fichier n'est pas une image");
}
if( !move_uploaded_file($tmp_file, $cheminFichier . $name_file) ) {
exit("Impossible de copier le fichier dans $content_dir");
}
echo "Le fichier a bien été uploadé";
}
break; |
Merci d'avance, j'ai vraiment besoin d'aide !!!
Nico