Bonsoir, J'ai une erreur de ce type lors d'un enregistrement dans une BDD => Remarque : tentative d'accès au décalage du tableau sur la valeur de type bool dans C:\wamp64\www\projet-images\class\imageManager.php à la ligne 85, 86, 87, 88
Voici mon code :
class/imageManager.php
Merci d'avance.
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97 <?php class imageManager { private $db; public function __construct($db) { $this->setDb($db); } public function setDb(PDO $dbh) { return $this->db = $dbh; } public function addImage(Image $image) { try { $sql = 'INSERT INTO images(title, descr, filename) VALUES(:title, :descr, :filename)'; $stmnt = $this->db->prepare($sql); $title = htmlspecialchars($image->getTitle()); $descr = htmlspecialchars($image->getDescr()); $filename = htmlspecialchars($image->getFilename()); $stmnt->bindParam(':title', $title); $stmnt->bindParam(':descr', $descr); $stmnt->bindParam(':filename', $filename); $stmnt->execute(); } catch(PDOException $e) { echo 'Erreur de requête ' . $e->getMessage(); } } public function getImages($image_dir) { $i = 0; if($handle = opendir($image_dir)) { while(false !== ($entry = readdir($handle))) { if($entry != "." && $entry != "..") { $i++; $images[$i]['filename'] = $entry; $image_data = $this->getImageData($entry); $images[$i]['title'] = $image_data['title']; $images[$i]['descr'] = $image_data['descr']; } } } closedir($handle); return $images; } public function getImageData($filename) { try { $sql = 'SELECT id, title, descr, filename FROM images WHERE filename = :filename'; $stmnt = $this->db->prepare($sql); $stmnt->execute(array( ':filename' => $filename )); $row = $stmnt->fetch(); $image_data['id'] = $row['id']; $image_data['title'] = $row['title']; $image_data['descr'] = $row['descr']; $image_data['filename'] = $row['filename']; return $image_data; } catch(PDOException $e) { echo 'Erreur de requête ' . $e->getMessage(); } } }
Partager