Bonjour,
J'aimerai ajouter une image dans ma base de donnée ainsi qu'un titre et une catégorie.
Après avoir envoyé mon fichier, le lien qui donne le nom de la photo s'enregistre bien dans ma table 'realisations' dans 'image' mais l'image uploadée ne s'ajoute pas dans mon fichier 'images/...' du coup, rien ne s'affiche.
Pouvez-vous m'aider ? :D
J'ai mon formulaire :
Code:
1
2
3
4
5
6
7
8
9 <form action="test2.php" method="post" enctype="multipart/form-data"> <p> Formulaire d'envoi de fichier :<br /> <input type="file" name="image" /><br /> <p><input type="text" name="categorie"></p> <p><input type="text" name="titre"></p> <input type="submit" value="Envoyer le fichier" /> </p> </form>
Et le fichier d'envoi :
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
49
50
51
52
53
54
55
56
57
58
59 <?php $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', 'root', $pdo_options); $categorie = $_POST['categorie']; $titre = $_POST['titre']; $nom = md5(uniqid("realisations_", true)); $name = "images/".str_replace(' ','',$nom); if (isset($_FILES['image']) AND $_FILES['image']['error'] == 0) { if ($_FILES['image']['size'] <= 1000000) { $infosfichier = pathinfo($_FILES['images']['name']); $extension_upload = $infosfichier['extension']; $extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png'); if (in_array($extension_upload, $extensions_autorisees)) { $result = move_uploaded_file($_FILES['image']['tmp_name'],$name); if ($result) echo "Transfert réussi"; else { echo 'echec transfert';} } } } try { $reponse = $bdd->query('SELECT * FROM realisations'); $req = $bdd->prepare('INSERT INTO realisations (image, categorie, titre) VALUES(?, ?, ?)'); $req->execute(array($nom, $_POST['categorie'], $_POST['titre'])); while ($donnees = $reponse->fetch()) { ?> <p> <img src="images/<?php echo $nom; ?>" ><br /> </p> <?php } $reponse->closeCursor(); } catch(Exception $e) { die('Erreur : '.$e->getMessage()); } ?>