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
| //tu prépares d'abord ton sql
//tu veux obtenir (1,3,4) en fonction de $liste
$liste = array (1, 3, 4);
$sqlIn='(';
foreach($liste as $id){
$sqlIn.=$id.',';
}
//tu supprimes la dernière virgule
$sqlIn=substr($sqlIn,0,-1);
$sqlIn.=')';
$sql = 'SELECT nom,id from table where id in '.$sqlIn;
//là attention, il faut mettre tout ce qui touche à la base dans ton bloc try
try {
$dbh = new PDO('mysql:host=localhost;dbname=base', 'root', '');
//important pour récupérer les messages d'erreur éventuels
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $dbh->prepare($sql);
$stmt->execute();
//puis tu ranges tout ça dans un tableau PHP
$data=array();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC) {
array_push($data,$row);
}
//pour vérifier si c'est bon
echo '<pre>';
print_r($data);
echo '</pre>';
//on ferme la connexion
$dbh=NULL;
}
catch (PDOException $e) {
print $e->getMessage();
} |
Partager