Je me demandais comment vérifier de multiples ID dans une seule requete.
Pourquoi: C'est pour un moteur de recherche qui ne doit afficher les résultats que si une galerie est non-protégée (ou si elle est protégée, on vérifie les authorized_id).
Les authorized_id proviennent d'un array lequel provient de la table USERS.
Exemple : $authorized_id = array (1,2,3,4,10,12,30);
Exemple de recherche :
Si une galerie est considérée comme privée (champ: gallery_private = true) et que l'utilisateur connecté possède l'id de la galerie (en authorized_id), on affiche TOUS les enregistrements non privés et l'enregistrement (ou les enregistrements) PRIVE où l'id de la galerie est authorisée (autorized_id) ET LE TOUT BIEN SUR SUIVANT LE(S) MOTS(S) CLEF(S).
Voici ce que j'ai tenté de faire :
$req_search="SELECT $CfgTableMain.gallery_id, $CfgTableMain.gallery_date, $CfgTableMain.gallery_author, $CfgTableMain.gallery_place, $CfgTableMain.gallery_title, $CfgTableMain.gallery_descr, $CfgTableMain.gallery_int_title, $CfgTableObjects.object_title, $CfgTableObjects.object_filename, $CfgTableObjects.object_type
FROM $CfgTableMain LEFT JOIN $CfgTableObjects ON ($CfgTableMain.gallery_id = $CfgTableObjects.gallery_id)
WHERE ($CfgTableMain.gallery_date LIKE '%$searchitem%' OR $CfgTableMain.gallery_author LIKE '%$searchitem%' OR $CfgTableMain.gallery_place LIKE '%$searchitem%' OR $CfgTableMain.gallery_title LIKE '%$searchitem%' OR $CfgTableMain.gallery_descr LIKE '%$searchitem%' OR CfgTableObjects.object_title LIKE '%$searchitem%')
AND ($CfgTableMain.gallery_private = 'false' OR $CfgTableMain.gallery_private = '' OR ($CfgTableMain.gallery_private = 'true' AND $CfgTableMain.gallery_id = '19,1'))";
Vous remaquerez donc que j'essaye d'utiliser de multiples ID séparés par des virgules à la ligne : OR ($CfgTableMain.gallery_private = 'true' AND $CfgTableMain.gallery_id = '19,1')Mais il s'avère que ça ne marche pas. La requête ne prend pas en charge les multiples ID.
Ma question est donc de savoir comment je puis tester de multiples ID dans une seule requête ...
Merci pour votre aide,
Raph