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 :
Ma page de redirection est comme cela (avec création d'un nouveau nom de fichier, et écriture dans bdd) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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>
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 ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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'; } } } }
Merci mille fois par avance,
Bonne fin de journée à tous.
Partager