over trefwoorden:
ik dacht eigenlijk dat je dat nodig zou kunnen hebben voor een zoekfunctie. Stel dat je alle berichten zou willen hebben waar "brand" in voorkomt ofzo, dat je dan een opsomming van berichten krijgt, links dus naar de pagina's
ik weet eigenlijk dus niet precies hoe het zoeken gaat, vandaar hier over trefwoorden.
het zou inprincipe hetzelfde moeten gaan werken als de zoekfunctie hier bij phphulp.nl dacht ik...
Daar heb ik me nog niet in verdiept, dan zou je ff in een andere topic moeten vragen. Het is beter als je niet trefwoorden gebruikt, maar dat het woord in het document zelf word opgezocht. (in het document staan veel meer woorden dan de paar trefwoorden die jij eraan koppelt).
Hoe dit moet weet ik niet, maar ik hoor het graag.
Heb niet het hele topic gelezen, maar een zoekfunctie werkt (meestal?) met een database, dus je hele site waarin je zoekt zit in een database. En daarin zoek je.
Misschien dat een andere php-er die deze post leest het antwoord weet en het gewoon hier kan delen :-)
het zou een beetje jammer zijn als deze topic alleen maar tussen Steven Weijdt en mezelf zou blijven...
ik ben benieuwd wie ons ;-) hiermee zou kunnen helpen.
Zoeken in MySQL is een verhaal op zich. Je kunt op teksten zoeken met het keyword LIKE.
Bijv:
<?php
$sql = "
SELECT *
FROM tabel
WHERE tekstveld LIKE '%$zoekwoord%'
";
?>
Als je wilt zoeken, en je wilt de resultaten kunnen sorteren op relevantie, dan kun je een FULLTEXT search doen. Dan moet je wel eerst een fulltext-index aanmaken op de velden waarin je gaat zoeken. Het nadeel daarvan is weer, dat een FULLTEXT zoekactie alleen HELE woorden vindt. Als je zoekt op 'boot', dan vindt hij 'duikboot' dus niet. Als je versie van MySQL nieuw genoeg is (weet niet precies) dan kun je een BINAIRY FULLTEXT search doen, waarmee hij weer wèl delen van woorden vindt. In jouw geval zou ik het dus gewoon op de eerste manier doen, met LIKE.
?
Onbekende gebruiker
20-11-2005 03:18
En als je de varaiblen uit de quotes houdt is het nog beter ;)