Hi Andy,
Here's a recipe from my CMSB Cookbook http://www.thecmsbcookbook.com that might answer some of your questions.
If this type (or any other type) of basic search form is put on your list page, only the records that match the search criteria will be displayed.
the $_SERVER['PHP_SELF'] displays the search results on the same page as the form, so you might only need the list page.
There are a number of other recipes in the cookbook that take the concept to a more complex level.
Hope it helps a bit.
Jerry Kornbluth
__________________________________________________________________________________________
SETTING UP BASIC SEARCHES
Here’s some basic code that you can use to set up a simple search box on the list page of a multi-record editor to return only those
records that match your search criteria.
_____ code ________________________________________________
<form method="POST" action="<?php echo $_SERVER['PHP_SELF'] ?>">
<input type="text" name="your_field_name_your-criteria" value="">
<input type="submit" name="submit" value="Search">
</form>
Notice the “name” entry on the sample form above. It starts with the field in which you want to preform the search (your_field_name) and
is followed by a modifier that determines what type of search is to be performed (_your-criteria).
CMSB is set up to allow you to search by many criteria by changing ( _your-criteria) in the “name” entry to one of these:
_match - an exact match
_keyword - will look for specific words
_prefix - starts with keyword (or letter)
_query - allows google-style query searches such as: +dog -cat "multi word phrase". Only records matching EVERY word or quoted phrase are
returned. Words or phrases that start with - mean "must not match". The + is optional and not required.
_fieldname_empty Matches blank fields Matches fields that are blank (""). Example: email_empty=1
_min - A minimum value for numeric searches
_max - A maximum value for numeric searches
_year year number for date searches
_month - month number for date searches
_day - Day of month for date searches
So, let’s say you’ve set up a field called “fruit” that can contain one or more keywords, like Apple, Banana, Pear, Orange.
Here’s the basic code that you would use to search for one of those.
_____ code ________________________________________________
<form method="POST" action="<?php echo $_SERVER['PHP_SELF'] ?>">
<input type="text" name="fruit_keyword" value="">
<input type="submit" name="submit" value="Search">
</form>
__________________________________________________________
If the visitor entered Apple, Banana, Pear, or Orange, only those records that contained the keyword would be listed.
You could also change the form to include a drop down menu of choices instead of the text box like this:
_____ code ________________________________________________
<form method="POST" action="<?php echo $_SERVER['PHP_SELF'] ?>">
<select name="fruit_keyword">
<option value="">Please Choose a Fruit</option>
<option value="Apple">Apple</option>
<option value="Banana">Banana</option>
<option value="Pear">Pear</option>
<option value="Orange">Orange</option>
</select>
<input type="submit" name="submit" value="Search">
</form>
__________________________________________________________
The first CMS Builder reference book is now available on-line!
Take advantage of a free 3 month trial subscription, only for CMSB users, at: http://www.thecmsbcookbook.com/trial.php