e m kraak schreef op dinsdag 10 maart 2015, 15:30:
> Misschien is het nuttig dat je ons uitlegt hoe het zoeken precies werkt,
> zodat we daar een misschien beter begrip over krijgen en van daaruit
> wellicht betere vragen stellen, want ik vind het wonderlijk dat je 3
> zoekvensters hebt die alle 3 iets anders lijken te doen maar wat ze
> precies doen is mij niet duidelijk.
Die zoekfunctie onderin is dezelfde als links in het menu. Dus we hebben een overall-zoekfunctie (die ook het forum deed maar nooit is aangepast aan het nieuwe forum) en een forum-specifieke zoekfunctie rechtsboven.
Zoeken in de database wordt aan MySQL overgelaten, is een "fulltextsearch". Het statement is:
select messages.msg_id,messages.cat_id,messages.rating,date_format(messages.date,'%m-%Y'),messages.subject_id,subjects.subject,users.naam,fulltextsearch.body,match(fulltextsearch.body) against($src) as score from forum.fulltextsearch,forum.messages,forum.subjects,webapp.users where match(fulltextsearch.body) against($src) and fulltextsearch.msg_id=messages.msg_id $condition and subjects.subject_id=messages.subject_id and users.user_id=messages.user_id order by messages.rating desc,score desc limit $skip,$list_items

Aan het zoeken zelf kunnen we dus niet zoveel doen, dat werkt gewoon als de juiste zoekwoorden worden aangetroffen in een bericht. Sortering werkt op basis van "rating" (dus de uitgedeelde sterren) en de "score" zoals vastgesteld door MySQL.
Ik vind het goed werken.
Het idee is dat echt interessante berichten wel een ster krijgen en in een relevante rubriek worden geplaatst.
> Ik dacht dat de opzet van de rubrieken vooral was om zoeken vanuit externe
> functies (zoals goegel) evt. te blokkeren, niet om intern zoeken te
> blokkeren
Ook. We wilden allerlei "kroegpraat/geharrewar" niet bovenaan in de zoekresultaten terecht laten komen, noch op Googel noch op onze eigen site.
> Maar over selecteren: wat is er onpraktisch of niet uiterst rechtlijnig
> aan mijn eerdere gedachten een zo maximaal mogelijk gebruik te maken van
> de dbase velden om zo goed mogelijk te selecteren?
Wordt het dan zoeken op inhoud EN subject? of inhoud OF subject? En hoe wordt de weging? Ik weet nu al dat er dan weer andere gekke dingen gebeuren, dat een of andere dom subject (wat zelden wordt veranderd wanneer de inhoud naar een zijspoor verschuift) dan ineens tot gevolg heeft dat een volslagen irrelevant bericht bovenaan komt te staan alleen maar door het foutieve subject, terwijl een wel relevant bericht verderweg komt te staan. Dat zoeken wordt een heel project op zich waarbij iedereen wel voorbeelden kan vinden waarom zoeken op combinatie met andere velden ineens wel, of ineens juist niet, goede resultaten geeft. En met elke keuzemogelijkheid die we aanbieden wordt het onoverzichtelijker en begrijpen alleen nog maar de experts hoe ze het moeten gebruiken. Hoeveel mensen hier weten bijvoorbeeld wat Regular Expressions zijn? Uiteindelijk vult iedereen toch een zoekwoord in, in het grootste invulvenster dat ze zien, laat alle opties voor wat ze zijn en hoopt op goede resultaten.
Frans