Je suis entrain d'essayer de faire une automatisation pour préparer une requete type PDO.
En effet, je dispose d'un champ dans ma base ou sont stockées de multiples id séparés par des virgules et j'aimerai pouvoir traiter cette chaine pour la faire fonctionner en requete PDO préparées.
Code pour les point ? de la requete
$authorized_id = 1,2,3,4,5,6
$authorized_list = explode(',' , $authorized_id);
$point = array_values(array_fill(0, count($authorized_list), '?'));
// ce qui donne pour la première partie de la requête :
WHERE $CfgTableMain.gallery_id IN ($point)
Ce code n'est malheureusement pas fonctionnel car "$point" est un array et la requete requiert un fonctionnement comme ceci :WHERE $CfgTableMain.gallery_id IN ($point[0],$point[1],$point[2],...)
Ma première question est de savoir comment je dois m'y prendre pour créer une variable (pas un array) automatisée par rapport aux données pour que ma requête se présente toujours de la manière : WHERE $CfgTableMain.gallery_id IN ($variable) ** variable étant sous la forme : $variable = $point[0],$point[1],$point[2], ...
J'ai essayé pas mal de choses dont foreach, for, ... avec un count($authorized_list) mais sans résultats probants.
Car ==> je dois pouvoir faire : $variable = $point[$i].','; dans une boucle MAIS le dernier item de l'array "$point" ne doit pas contenir de virgule.
Vous me suivez ?
Ensuite viens le problème de l'éxécution de la requête. En effet, une requête PDO préparée exécute, dans un array, les données. Exemple :
$req_main->execute(array($authorized_list[0],$authorized_list[1],$authorized_list[2]));
Ma seconde question est de savoir comment faire une automatisation un peu comme pour les ? de la requête pour pouvoir afficher mes résultats dynamiquement dans l'array de l'exécution de la requête... du style : $req_main->execute($authorized_list);
J'ai vraiment besoin de votre aide.
Je ne peux pas faire autrement que de mettre de multiples chiffres dans un champ pour cette partie de mon site.
Merci pour tous vos renseignements,
raph