Comment modifier mon code de liste simple à multiple ?
Fermé
geekat
Messages postés
228
Date d'inscription
vendredi 31 juillet 2015
Statut
Membre
Dernière intervention
24 février 2017
-
Modifié par geekat le 10/09/2015 à 14:16
geekat Messages postés 228 Date d'inscription vendredi 31 juillet 2015 Statut Membre Dernière intervention 24 février 2017 - 11 sept. 2015 à 16:54
geekat Messages postés 228 Date d'inscription vendredi 31 juillet 2015 Statut Membre Dernière intervention 24 février 2017 - 11 sept. 2015 à 16:54
A voir également:
- Comment modifier mon code de liste simple à multiple ?
- Modifier liste déroulante excel - Guide
- Modifier dns - Guide
- Code ascii de a - Guide
- Comment modifier un pdf - Guide
- Modifier code pin - Guide
1 réponse
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
11 sept. 2015 à 11:32
11 sept. 2015 à 11:32
Salut,
Une solution simple et rapide est d'utiliser l'opérateur de comparaison sql IN et la fonction php implode :
Pour éviter les injections sql, il faut également échapper les caractères réservés. Puisque tu n'utilises que des entier, tu peux simplement utiliser intval() pour éviter les injections sql, autrement il faudrait utiliser la méthode PDO::quote() ou une requête préparée avec des paramètres.
Soit :
Bonne journée
Une solution simple et rapide est d'utiliser l'opérateur de comparaison sql IN et la fonction php implode :
if(!empty($_POST['thematique'])) { $criteres[] = "thematique IN (" . implode(',', $_POST['thematique']) . ")"; }
Pour éviter les injections sql, il faut également échapper les caractères réservés. Puisque tu n'utilises que des entier, tu peux simplement utiliser intval() pour éviter les injections sql, autrement il faudrait utiliser la méthode PDO::quote() ou une requête préparée avec des paramètres.
Soit :
if(!empty($_POST['thematique'])) { $criteres[] = "thematique IN (" . implode(',', array_map('intval', $_POST['thematique'])) . ")"; }
Bonne journée
11 sept. 2015 à 16:17
11 sept. 2015 à 16:24
11 sept. 2015 à 16:35
11 sept. 2015 à 16:47
Si tu veux trouver les éléments commun entre deux tableau, tu peux utiliser la fonction php array_intersect() mais je ne comprend bien le rapport avec ta requête.
11 sept. 2015 à 16:54
Le rapport avec la requête, c'est juste un exemple où :
thematique = 1|6 et $_POST['thematique'] = 3|4|6
Je vais essayer cette fonction merci.