Ik heb een tabel die bestaat uit onderwerpen. Als ik bijvoorbeeld het woord 'leiderschap' wil opvragen dan geeft hij alle woorden waar 'leiderschap' in voor komt weer. Ik heb bijvoorbeeld 'persoonlijk-leiderschap', 'autocratisch-leiderschap' en 'democratisch-leiderschap' in de tabel staan. En die geeft hij dan ook weer.
Hoe kan ik het oplossen als ik voor onderwerp 'leiderschap' kies dat ik alleen dat overzicht krijgt te zien en als ik 'persoonlijk-leiderschap' kies dat ik alleen daar een overzicht van krijg.
<?php
$sql = "SELECT * FROM items_onderwerpen JOIN onderwerpen.onderwerp_id = items_onderwerpen.onderwerp_id WHERE onderwerp = '$onderwerp'";
$result = $conn->query($sql);
?>
Als je naar een uniek woord zoekt, worden niet alle samenstellingen gevonden.
Als je ook samenstellingen krijgt, heb je waarschijnlijk LIKE gebruikt.
Voorbeeld. Een recepten database met lappen tekst.
Als ik dit doe komt er niets uit :
SELECT * FROM `pix` WHERE `recipetxt` = 'banana bread';
Als ik dit doe komt het recept wel in beeld :
SELECT * FROM `pix` WHERE `recipetxt` LIKE '%banana bread%';
Als ik een tabel heb met unieke woorden, bijvoorbeeld ‘banana bread’, en ik zoek daar naar komt dat eruit. Als ik de losse woorden ‘banana’ en ‘bread’ in de tabel heb, komt die combi er niet uit tenzij ik een query maak die beide woorden zoekt.