> I'd better apologize at the outset as I'm not sure this is strictly a PHP > problem - though I'm using PHP as the means of building the application. > Anyway, here goes: > > I'm creating a website that will function as a directory of services within a > specific area of the UK charity sector. A variety of groups will input the > content via a custom built CMS and this content will then be available to the > general public. One of the requirements is that a keyword search facility is > built into the application allowing end users to search for services based on > a variety of words they might associate with them. > > What I propose to do is have a separate table of keywords/phrases that have > been previously entered by contributors. There will then be a separate table > linking the id field of the associated keywords with the id field of the > service in question. Herein lies the problem. > > The contributors will be presented with a multi-part form. When it comes to > the stage at which they will need to enter the relevant keywords for a service > there seem to me to two ways of dealing with this: > > 1. Allow the contributors to enter whatever keywords and phrases they wish. > > 2. Only allow contributors to have access to a restricted set of > keywords/phrases. > > The first of these options would run the risk of creating an unmanageably > large and devalued set of keywords/phrases. The second option would seem to > result in a set of keywords that are too generalized to be of much benefit to > the ultimate end users. > > Are there any accepted approaches to tackling such a problem which anyone > could point me towards? I'm sure it must have been encountered before though > I've been unable to find much on this after extensive googling and searching > through mailing list archives.
I like the Luke Welling, Laura Thomson approach for keyword searching described in "PHP and MySQL Web Development" -- <http://www.lukelaura.com>. The system described is your option (1) above, and allows the keywords to be weighted by the contributors. HTH -- Lowell Allen -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php