Vous disposez d'un tableau d'ID de galerie, $galleries, et vous souhaitez créer une requête SQL qui sélectionne des lignes à partir d'une table de base de données basée sur les valeurs du tableau.
Pour ce faire, vous devez utiliser la clause IN dans votre condition WHERE. Cette clause vous permet de spécifier une liste de valeurs à comparer à un champ. Voici comment modifier votre requête :
SELECT * FROM galleries WHERE id IN (1, 2, 5);
En remplaçant les valeurs /* du tableau $galleries... par exemple. (1 || 2 || 5) */ avec les valeurs réelles de votre tableau, vous pouvez générer dynamiquement la clause IN.
Il existe plusieurs façons de procéder en PHP :
Méthode 1 : Utilisation d'implode() :
$ids = implode(',', $galleries); $sql = "SELECT * FROM galleries WHERE id IN ($ids);";
Méthode 2 : Utilisation du paramètre PDO liaison :
$stmt = $pdo->prepare("SELECT * FROM galleries WHERE id IN (:ids);"); $stmt->bindParam(':ids', implode(',', $galleries), PDO::PARAM_STR); $stmt->execute();
En utilisant ces techniques, vous pouvez facilement créer des requêtes SQL qui filtrent les données en fonction des valeurs stockées dans un tableau.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!