Bonjour,
Je suis le tuto sur la POO et je rencontre l'erreur suivante lorsque je clique sur le bouton supprimer (que se soit pour les articles ou pour les catégories) :
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error' in /Users/zouini/Documents/Sites/www/grafikart/blog/core/Database/MysqlDatabase.php:73 Stack trace: #0 /Users/zouini/Documents/Sites/www/grafikart/blog/core/Database/MysqlDatabase.php(73): PDOStatement->fetch() #1 /Users/zouini/Documents/Sites/www/grafikart/blog/core/Table/Table.php(69): Core\Database\MysqlDatabase->prepare('DELETE FROM art...', Array, 'App\Entity\Post...', true) #2 /Users/zouini/Documents/Sites/www/grafikart/blog/core/Table/Table.php(43): Core\Table\Table->query('DELETE FROM art...', Array, true) #3 /Users/zouini/Documents/Sites/www/grafikart/blog/pages/admin/posts/delete.php(5): Core\Table\Table->delete('4') #4 /Users/zouini/Documents/Sites/www/grafikart/blog/public/admin.php(42): require('/Users/zouini/D...') #5 {main} thrown in /Users/zouini/Documents/Sites/www/grafikart/blog/core/Database/MysqlDatabase.php on line 73
Voici la fonction de la class MysqlDatabase.php :
public function prepare($statement, $attributes, $class_name = null, $one = false) {
$req = $this->getPDO()->prepare($statement);
$res = $req->execute($attributes);
if(strpos($statement, 'UPDATE') === 0 || strpos($statement, 'INSERT') === 0 || strpos($statement, 'DELETE')){
return $res;
}
if($class_name === null) {
$req->setFetchMode(PDO::FETCH_OBJ);
} else {
$req->setFetchMode(PDO::FETCH_CLASS, $class_name);
}
//$req->setFetchMode(PDO::FETCH_CLASS, $class_name);
if($one) {
$datas = $req->fetch();
} else {
$datas = $req->fetchAll();
}
return $datas;
}
La ligne 73 correspond à celle-ci :
$datas = $req->fetch(); juste après if($one) {
Quelqu'un peut-il m'aider svp ?
Merci d'avance