Zoeken in komma gescheiden lijst

Status
Niet open voor verdere reacties.

sanma

Gebruiker
Lid geworden
11 dec 2008
Berichten
170
Ik heb een komma gescheiden lijst die ik maak vanuit meerdere keuzevakjes dit wordt in de database gezet als:

item1,item2,item3 etc. (het aantal geselecteerde opties kan verschillen!)


Nu wil ik graag alles uit de database halen waarbij hij kijkt naar deze waardes dus zoiets:

$types = explode(',', $lijst['naam']);

SELECT
naam
FROM
tabel
".(COUNT($types) > 0 ? "AND type IN '".$types."'" : "")."

Dit werkt echter logisch gezien niet maar hoe kan ik nu alle rijen uit mijn database halen waarbij de waardes in kolom "naam" gelijk is aan één van mijn waardes uit de lijst. Ik wil dus alle rijen hebben die als "naam" of de waarde item1, of item2 of item3 etc. hebben afhankelijk van de keuzes.


Bedankt alvast!
 
$where = "Where type = '" . implode("' OR type = '",$type) ."'";

Select naam FROM table $where

* Check ff de syntaxt van de $where. Moet lezen : Where type = 'data' OR type = 'data' OR type = 'data'.........
 
Hallo,

Dit werkt uitstekend, ik zet echter nog met 1 probleem ik heb nu:

SELECT naam FROM table WHERE type = 'type1' OR type = 'type2'

Maar ik heb in deze query nog twee extra waardes die altijd zo moeten zijn namelijk goedgekeurd en einddatum ik zou dus dit moeten krijgen:

SELECT naam FROM table WHERE type = 'type1' AND goedgekeurd = 1 AND einddatum > '".time()."' OR type = 'type2' AND goedgekeurd = 1 AND einddatum > '".time()."'

Is dit ook mogelijk erbij te zetten?
 
$where = "Where type = '" . implode("' OR type = '",$type) ."' AND goedgekeurd = 1 AND einddatum > '".time(). "'";

probeer dit eens! Niet getest en zomaar een ideetje
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan