J'ai un problème avec PDO que je voudrais vraiment obtenir une réponse après avoir été tourmenté par elle pendant un certain temps.
Prenez cet exemple:
Je suis de la liaison d'un tableau d'ID pour un AOP déclaration pour une utilisation dans une base de données MySQL DANS l'énoncé.
La matrice serait de dire: $valeurs = array(1,2,3,4,5,6,7,8);
La base de données-fort variable serait $produits = implode(',' $valeurs);
Donc, $produits serait alors une CHAÎNE d'une valeur de: '1,2,3,4,5,6,7,8'
La déclaration ressemblerait à:
SELECT users.id
FROM users
JOIN products
ON products.user_id = users.id
WHERE products IN (:products)
Bien sûr, $produits serait lié à la déclaration :produits.
Toutefois, lorsque l'instruction est compilée et de valeurs liées à l', il serait effectivement ressembler à ceci:
SELECT users.id
FROM users
JOIN products
ON products.user_id = users.id
WHERE products IN ('1,2,3,4,5,6,7,8')
Le problème est qu'il est en cours d'exécution tout à l'intérieur de l'énoncé comme une seule chaîne, étant donné que je l'ai préparée comme valeurs séparées par des virgules à se lier à la déclaration.
Ce que j'ai réellement besoin est:
SELECT users.id
FROM users
JOIN products
ON products.user_id = users.id
WHERE products IN (1,2,3,4,5,6,7,8)
La seule façon que je peux réellement faire est de placer les valeurs dans la chaîne elle-même, sans liaison entre eux, cependant je sais que pour certains, il y a un moyen plus facile de le faire.
Je dois être complètement à côté de la marque ici et je sais que je vais me lancer quand je vois ce qu'est la réponse!
Merci à l'avance.