Est-il possible de sélectionner des données avec une seule requête d'une table mysql avec une chaîne de valeurs? J'ai la requête suivante et j'essaie de récupérer des résultats où la classe c.id_category n'est pas égale à l'une des valeurs dans la chaîne. qui consisterait à quelque chose comme "1,67,23,34,65"PHP MySQL! =/W Liste de valeurs
'SELECT DISTINCT c.*,
cl.*
FROM `'._DB_PREFIX_.'category` c
LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category`
AND `id_lang` = '.intval($params['cookie']->id_lang).')
LEFT JOIN `'._DB_PREFIX_.'category_group` cg ON (cg.`id_category` = c.`id_category`)
WHERE 1'.(intval($maxdepth) != 0 ? '
AND `level_depth` <= '.intval($maxdepth) : '').'
AND (c.`active` = 1 OR c.`id_category`= 1)
AND c.`id_category` != VAR_ARRAY
AND cg.`id_group` '.(!$cookie->id_customer ? '= 1' : 'IN (SELECT id_group
FROM '._DB_PREFIX_.'customer_group
WHERE id_customer = '.intval($cookie->id_customer).')').'
ORDER BY `level_depth` ASC, cl.`name` ASC'
Vous n'échappez pas au cookie. Cela peut entraîner une injection SQL. –
'... ET c.id_category NOT IN (1, 67, 23, 34, 65)' – thetaiko