Du bør lave din database om så du får en en-til-mange relation i stedet for... I.e. du har produkt og produkt_kategori hvor produkt_kategori indeholder produkt ID og kategori ID.
Tro mig, ville jeg godt nok også hellere - men da det er et site jeg har overtaget opdatering af - og ikke har tiden til den store opdatering, så vil jeg ikke gå så meget i dybden af den.
Du *kunne* godt bruge den løsning du beskriver men så skal du opdatere al indholdet, så der er komma i start og slut af feltet, e.g. ",6," og ",1,16,14," - for så skal du lede efter ',".$_GET['kat'].",' - alternativt kan du bruge REGEXP:
"SELECT * FROM produkt WHERE aktiv = 1 AND sub = 0 AND kat REGEXP '(^|,)".$_GET['kat']."($|,)'"
Der er da også den metode med at bruge 4 betingelser til at dække alle kombinationer af om der er komma før/efter, så du sliper for at ændre de eksisterende:
WHERE aktiv = 1 AND sub = 0 AND (kat = '".$_GET["kat"]."' OR kat LIKE '%,".$_GET["kat"]."' OR kat LIKE '".$_GET["kat"].",%' OR kat LIKE '%,".$_GET["kat"].",%')
...men det grundlæggende problem er jo det samme; det kommer ikke til at køre godt så længe strukturen ikke er i orden.
Min kommentar var ment som en tilføjelse til det med REGEXP - begge skulle virke uden ændringer (omend du nok vil mene den ene er nemmere at gennemskue en den anden - hvilken der er hvilken, ved du bedst selv). Giv derfor pointene til coderdk, og kom så i gang med at kigge på den databasestruktur ;)
...og husk at jo før du får rettet op på databasestrukturen, jo mindre kommer du også til at skulle rette rent kodemæssigt (fordi du ikke selv har nået at skrive så meget der er afhængig af den gamle struktur). Det er måske nok OK at du haster en eller anden ting ud hvis der er tale om en alvorlig fejl eller mangel, og så først kigger på databasen efter det, men igen; jo før jo bedre.
Jovist, der skal kigges på den struktur, og det kan næsten ikke gøres hurtigst nok - men igen, det var en fejl der skulle ordnes. Og at gå igennem hele strukturen er ikke hurtigt :)
Det er vel næsten den mindste del (select query, løkke med explode og inserts) - han skal jo igennem koden for at finde de steder hvor oplysningerne blev brugt.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.