Bonjour,
Voici mon code pour vérifier si un enregistrement existe.
Mon code fonctionne mais faut t'il plutôt privilégier fetchColumn ?
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 $idann = (int) $_GET['idann']; $req = $pdo->prepare('SELECT a.idann, a.content, a.level, a.location, a.amount, u.username, u.email FROM ad a INNER JOIN users u ON a.idmbr = u.idmbr WHERE a.idann = ?'); $req->execute([$idann]); $ad = $req->fetch(); if (!$ad) { header('Location: index.php?p=ad/search'); exit(); }
et je ne comprends pas bien aussi le rowcount, http://php.net/manual/fr/pdostatement.rowcount.php regardez l'exemple numéro 2 "Comptage des lignes retournées par une requête SELECT"
Je cite la doc php :
donc je ne comprends pas, mon code fonctionne oui, mais est-ce qu'il existe une méthode plus "propre" pour vérifier qu'un enregistrement existe ?Pour la plupart des bases de données, PDOStatement::rowCount() ne retourne pas le nombre de lignes affectées par une requête SELECT. À la place, utilisez PDO::query() pour faire une requête SELECT COUNT(*), puis utilisez PDOStatement::fetchColumn() pour récupérer le nombre de lignes retournées. Votre application peut ainsi effectuer la bonne action.
merci pour votre aide.
Partager