Hulp nodig met query
Ik maak gebruik van onderstaande query welke overigens prima werkt. Echter wil ik deze query overzetten naar een fulltext query, maar dit wil me maar niet lukken.
Iemand enig idee wat ik fout doe ?
----------------
originele en werkende query
----------------
$query = "SELECT * FROM pm
WHERE description
LIKE '%".$zoekwoorden[0]."%'";
for($i = 1;$i < count($zoekwoorden); $i++)
{
$query .= " OR description
LIKE '%".$searchwords[$i]."%'";
}
----------------
moet iets worden zoals dit
----------------
$query = "SELECT *,
MATCH (omschrijving,categorie,soort)
AGAINST ('%".$zoekwoorden[0]."%')
AS score FROM pm
WHERE MATCH (omschrijving,categorie,soort) AGAINST ('%".$zoekwoorden[0]."%')
ORDER BY score DESC";
for($i = 1;$i < count($zoekwoorden); $i++)
{
$query .= "
OR MATCH (omschrijving,categorie,soort)
AGAINST ('%".$zoekwoorden[$i]."%')
ORDER BY score DESC";
}
ik heb al geprobeerd om de gehele query achter het laatste gedeelt (na "or match") te plaatsen maar dat hielp ook niet.
het probleem ligt hem in dat laatste gedeelte..ik weet bijvoorbeeld niet of "or match" mogelijk is ??
iemand een suggestie of tip ??
Gewijzigd op 01/01/1970 01:00:00 door Robin
http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html
Gewijzigd op 01/01/1970 01:00:00 door Steff an
bedankt voor de tip, maar daarmee kom ik helaas niet verder. ik heb de pagina reeds een aantal keer doorgespit, maar helaas dus tevergeefs
Gewijzigd op 01/01/1970 01:00:00 door Han eev
ik ben verder al iets verder gekomen. het probleem ligt hem niet in bovenstaande code, maar in de switch die ik erbij gebruik. ik had deze hier niet gepost omdat het zo onleesbaar zou worden en ik er vanuit ben gegaan dat dat het probleem niet is.
Bovenstaande code werkt dus wel !!
Ik heb het inmiddels ook met de switch aan de praat gekregen:
switch ($_GET['extrazoek']) {
case "1":
$query
break;
case "2":
$query
break;
}
for($i = 1;$i < count($zoekwoorden); $i++)
{
switch ($_GET['extrazoek']) {
case "1":
$query
break;
case "2":
$query
break;
}
}
ik had alles afgesloten met 1 ")" maar door de 2de switch moesten er dus 2 staan !!
echt oliedom dus weer van me, maar ja op een gegeven moment sta ik er zo lang naar te staren dat ik juist de kleinste dingen niet meer zie.
iedereen toch bedankt voor de moeite.
nu alleen nog een stukje scripten om de relevantie te bepalen aangezien de zoekmachine nu ook wel op meerdere zoekworden zoekt maar als op volgorde van invoer als resultataat weergeeft.