Hello, I'm working with a client who is building a database of battered womens' shelters in our state. I've created a CCK content type and added the fields she's requested. Now comes what's turning out to be the tricky part: how to create a search form for anonymous viewers to be able to search *only* information input through that content type, and to have a customized search form with only certain options available (for privacy reasons the don't want to have everything searchable....)

I have found a similar thread at http://drupal.org/node/69981. But the conclusion there seems to be to use the search module (a modified version), or a views-based search. However, the search module doesn't look like it can be configured to the degree I would like, and the views option is on the same page as the results and the client is thinking of a search form all by itself on a dedicated page.

I believe this reflects the current state of CCK searching - please let me know if I've missed something.... Otherwise, does anyone know of a way to do this? Any advice would be appreciated!

Jim

Comments

amariotti’s picture

I still say that your best option would be to go with a views based search using the fast search views module. I was able to build something pretty cool with it that would filter similar to what you're wanting. I say give it a shot, present it to the client, and then see what they think. I was able to get my working pretty quickly (30-40 minutes).

jimmb’s picture

Great - thanks for the reply! I will take your advice and see how that works.

Best,

Jim

jimmb’s picture

Well, I have made a view and installed the views_fastsearch module. I've enabled it as an exposed filter, but am getting a very simple (and un-ususable) search form, as can be seen here: http://mcbw.sundaysenergy.org/shelters?op0=%3D&filter0=

I like the fact that you got a custom search set up similar to what I'm looking for. But I can't figure out how to do that. The only "instructions" I could find are:

  1. create an index on search_index(fromsid, word)
  2. enable the mysql query cache - causes the COUNT() query to be cached speeding up secondary page searches set global query_cache_size=50000000;
  3. InnoDB is much slower than MyISAM for selects, so it is highly recommended that the search_index table not be InnoDB. A check has been added to the admin/settings/search page to warn when InnoDB is used.

Is this what you followed to make your search form? If so, I guess you have to know more PHP than I do.... As there's no other documentation for this module, I'd definitely appreciate a little fleshing out of the above, if you would be up for it.

Thanks,

Jim