PB upload fichier à partir d'un formulaire
Bonjour à tous,
Voilà, j'ai beau simplifier mon code au maximum, il ne fonctionne toujours pas, et ne me donne qu'une page blanche, si bien que je n'arrive pas à avancer.
A partir d'un formulaire (dans une partie admin), je voudrais uploader des images (qui seront visibles en partie publique).
Mon formulaire est comme ci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| <form method="post" action="page.php" enctype="multipart/form-data">
<p>
<fieldset style="background:url(/images/fond-formulaire.jpg) "repeat-y" >
<legend class="center">Images</legend>
<input type="hidden" name="MAX_FILE_SIZE" value="5242880" />
<label for="file" class="float">Fichier :</label>
<input type="file" name="file" />
<br />
<label for="description" class="float">Description :</label>
<input type="text" name="description" id="description" size="60" />
<br />
</fieldset>
<div class="center">
<input type="submit" value="Envoyer" />
</div><!-- end center-->
</p>
</form> |
Ma page de redirection est comme cela (avec création d'un nouveau nom de fichier, et écriture dans bdd) :
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
|
$dossier = $_SERVER['DOCUMENT_ROOT'].'/visuels/';
$maxsize = $_POST[MAX_FILE_SIZE];
if ($_FILES['file']['error'] > 0)
{
$erreur = 'Erreur lors du transfert';
}
else
{
if ($_FILES['file']['size'] > $maxsize)
{
$erreur = 'Le fichier est trop gros';
}
else
{
$extensions_valides = array('jpg','jpeg','gif','png', 'pdf');
$extension_upload = strtolower( substr( strrchr($_FILES['file']['name'], '.'),1));
if (in_array($extension_upload,$extensions_valides))
{
$nom = "md5(uniqid(rand(), true)).{$extension_upload}";
$resultat = move_uploaded_file($_FILES['file']['tmp_name'],$dossier.$nom);
if ($resultat)
{
echo 'Transfert réussi';
$image = $dossier.$nom;
$description = addslashes($_POST['description']);
$req = $bdd->prepare('INSERT INTO images (up_filename, up_filesize, up_description, up_finalname) VALUES( ?, ?, ?, ?) ');
$req->execute(array($_FILES['file']['name'] , $_FILES['file']['size'], $description, $nom));
}
else
{
echo 'Echec du transfert';
}
}
}
} |
Il y a sûrement qqchose qui cloche, mais je ne vois pas quoi, et je tourne en rond désespérément !! quelqu'un pourrait-il m'aider ? :cry:
Merci mille fois par avance,
Bonne fin de journée à tous.