Hulp nodig met query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Robin

Robin

13/07/2006 16:30:00
Quote Anchor link
Hallo,

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
 
PHP hulp

PHP hulp

17/11/2024 11:51:49
 
Steff   an

Steff an

13/07/2006 18:23:00
Quote Anchor link
Heb je niks aan de 'Reference Manual' op de MySQL website?

http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html
Gewijzigd op 01/01/1970 01:00:00 door Steff an
 
Robin

Robin

13/07/2006 19:27:00
Quote Anchor link
bedankt voor de tip, maar daarmee kom ik helaas niet verder. ik heb de pagina reeds een aantal keer doorgespit, maar helaas dus tevergeefs
 
Han eev

Han eev

13/07/2006 19:29:00
Quote Anchor link
De % moeten weg (Bij MATCH gedeelte), denk ik
Gewijzigd op 01/01/1970 01:00:00 door Han eev
 
Robin

Robin

13/07/2006 19:56:00
Quote Anchor link
de % zijn wildcards en mogen niets uitmaken..heb het voor de zekerheid even tetest, en inderdaad geen verschil.toch bedankt.

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.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.