Bonjour,
Je veux faire un update en pdo avec une requête préparée et utilise le code suivant:
Ce message d'erreur pointe la ligne 19, c'est à dire
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 <?php session_start(); $_SESSION["idItem"]= "10000"; if(isset($_SESSION["idItem"])) { include "connexion.php"; $SQL = "SELECT * FROM `hitsparitems` WHERE `id` = :id "; try { $stmt = $pdo->prepare($SQL); $stmt->bindValue(':id', $_SESSION["idItem"], PDO::PARAM_STR); if (!$stmt->execute()) { throw new PDOException('Erreur Execute requete'); } else { while ($row = $SQL->fetch(PDO::FETCH_ASSOC)) { $hits=$row["hits"]; } $SQL = $pdo->prepare("UPDATE `hitsparitems` SET hits=:hits, id=:id WHERE id=:id"); $SQL->execute(array( ':id' => $_SESSION['idItem'], ':hits' => $hits+1, )); } } catch (PDOException $pdoE) { echo 'PDO Exception: <br/>'.$pdoE->getMessage(); } } ?>.
Code : Sélectionner tout - Visualiser dans une fenêtre à part while ($row = $SQL->fetch(PDO::FETCH_ASSOC))
Un var_dump de $SQL me donne SELECT * FROM `hitsparitems` WHERE `id` = :id et j'en déduis (peut-être à tort) qu'il manque la suite (le bind) mais comment ne pas tout répéter ?
Merci d'avance.
Partager