Displaying Search Results on a Separate Page
Example
- Displaying product search results on a separate page.
MGI Tags
Steps
- Create a page to display search fields.
- Save the search page.
- Open the search page in a text editor.
- Insert the mgiSearchDatabase tag and postTarget parameter.
- Save the search page.
- Create a page to display search results.
- Save the results page.
- Open the results page in a text editor.
- Insert the mgiSearchDatabase tag from the search page.
- Save the results page.
- Create a search format file in a text editor.
- Save the search format file.
- Create a results format file in a text editor.
- Save the results format file.
- Create a results template file in a text editor.
- Save the results template file.
- FTP the search page, results page format files and template file to
the web server running MGI.
- View the search page in a browser and perform a search.
Step 1: Create a page to display search fields.
- Create a new page to display search fields. Any text or headers associated
only with the search fields should be entered on the search format file
not on the search page itself. On the search page, enter items such as
logos, navigation bars, etc. that are not specifically associated with
the search fields.
Step 2: Save the search page.
- Save the search page and name it "search.html".
Step 3: Open the search page in a text editor.
- Open the search page (search.html) in a text editing program that allows
you to view and modify the HTML.
Step 4: Insert the mgiSearchDatabase tag and postTarget parameter.
- Insert your cursor in the HTML of the search page where you want the
search form to display. Enter the mgiSearchDatabase tag, databaseFileLocation
parameter, tableName parameter, searchFormatFileLocation parameter, resultsFormatFileLocation
parameter, resultsTemplateFileLocation parameter, orderByField parameter,
and postTarget parameter.
-
- In the databaseFileLocation parameter, enter the path to and the name
of the database file that contains the table of information to search.
In the tableName parameter, enter the name of the database table to search.
Note: One mgiSearchDatabase tag can only search the fields in one database
table. In the searchFormatFileLocation parameter, enter the name of the
text file that specifies the content and layout of the search form. In
the resultsFormatFileLocation parameter, enter the name of the text file
that specifies the layout of the results list. In the resultsTemplateFileLocation
parameter, enter the name of the text file that specifies the layout of
each result in the results list. In the orderByField parameter, enter the
name of the database field to use for ordering results. The database field
that you use to order results must be an indexed field (indexing is set
up when the field is created). In the postTarget parameter, enter the name
of the results page (results.html).
<mgiSearchDatabase databaseFileLocation="Clothing" tableName="Tshirts"
searchFormatFileLocation="searchformat.txt"
resultsFormatFileLocation="resultsformat.txt"
resultsTemplateFileLocation="resultstemplate.txt"
orderByField="Design" postTarget="results.html">
Step 5: Save the search page.
- Save the changes you have made to the search page.
Step 6: Create a page to display search results.
- Create a new page to display search results. Any text or headers associated
only with the search results should be entered on the results format and
results template files, not on the search results page itself. On the search
results page, enter items such as logos, navigation bars, etc. that are
not specifically associated with the search results.
Step 7: Save the results page.
- Save the results page and name it "results.html".
Step 8: Open the results page in a text editor.
- Open the results page (results.html) in a text editing program that
allows you to view and modify the HTML.
Step 9: Insert the mgiSearchDatabase tag from the search page.
- The mgiSearchDatabase tag and parameters on the results page must match
the mgiSearchDatabase tag and parameters on the search page exactly. Copy
the mgiSearchDatabase tag from the search page and paste it into the results
page where you want the search results to display.
<mgiSearchDatabase databaseFileLocation="Clothing" tableName="Tshirts"
searchFormatFileLocation="searchformat.txt"
resultsFormatFileLocation="resultsformat.txt"
resultsTemplateFileLocation="resultstemplate.txt"
orderByField="Design" postTarget="results.html">
Step 10: Save the results page.
- Save the changes you have made to the search results page.
Step 11: Create a search format file in a text editor.
- Create a new page in a text editing program to specify the content
and layout of the search form. When the search page is parsed by MGI, the
search format file is included in the search page at the location of the
mgiSearchDatabase tag. The search format file should be a text file that
contains only HTML, text, and MGI tags. You may use any type of form fields
in the search form such as text fields, text boxes, popup menus, checkboxes
and radio buttons. Each form field will search one database field. To specify
the database field to search, name each form field with the following syntax:
name="field=DatabaseFieldName" where "DatabaseFieldName"
is the name of the database field to search. Database field names are case-sensitive.
The value of each form field should consist of the search criteria. To
match all records, use an asterisk (*) as the value (or use a blank value).
For text fields and text boxes, the user will enter the search criteria.
For popup menus, checkboxes, and radio buttons you must enter the search
criteria in the value of the field. If multiple form fields are included
in the search format file, an "AND" search will be performed
across all field values. That is, only results that match all search criteria
will be returned.
-
- The search button can display as a regular HTML submit button or as
an image. To use an HTML submit button, include the variable "mgiSearchButton"
in the search format file where you want the search button to appear. Use
the mgiGet tag to include the mgiSearchButton variable:
<mgiGet name="mgiSearchButton">
- To use an image as the search button in the search format file, enter
an image input field named "mgiSearchDatabaseAction=performSearch"
where you want the search image to appear:
<input type="image" name="mgiSearchDatabaseAction=performSearch"
src="search.gif">
- An optional variable can be included in the search format file, mgiResultsLimitPopup.
The mgiResultsLimitPopup variable creates a popup menu that limits the
number of results displayed per page. The results can be limited to 5,
10, 15, or 25 by default or customized by including the resultsLimitPopupValues
parameter in the mgiSearchDatabase tag on the search page and results page.
If you include the mgiResultsLimitPopup variable in the search format file,
you must also include the mgiPreviousButton and the mgiNextButton variables
in the results format file.
<mgiGet name="mgiResultsLimitPopup">
- In the Clothing database example, the search format file for the keyword
search contains two text fields for searching the t-shirt design and item
number, the mgiResultsLimitPopup variable, and the mgiSearchButton variable.
The following is a complete search format file of the Clothing database:
<CENTER>
<TABLE WIDTH="250">
<TR><TD COLSPAN="2"><B>Search for a T-Shirt</B></TD></TR>
<TR><TD ALIGN="RIGHT" WIDTH="150">T-Shirt Name:</TD>
<TD WIDTH="100">
<INPUT NAME="field=Design" TYPE="text" SIZE="10"></TD></TR>
<TR><TD ALIGN="RIGHT">T-Shirt Item Number:</TD>
<TD><INPUT NAME="field=ProductID" TYPE="text" SIZE="10"></TD></TR>
<TR><TD><P ALIGN=RIGHT> Maximum Results Per Page:</TD>
<TD> <mgiGet name="mgiResultsLimitPopup"></TD></TR>
<TR><TD> </TD>
<TD> <mgiGet name="mgiSearchButton"> </TD></TR>
<TR><TD COLSPAN="2"><P><B>OR</B></TD></TR>
</TABLE>
</CENTER>
Step 12: Save the search format file.
- Save the search format file and name it "searchformat.txt",
the value of the searchFormatFile parameter in the mgiSearchDatabase tag
on the search page.
Step 13: Create a results format file in a text editor.
- Create a new page in a text editing program to specify the layout of
the results list. When the results page is parsed by MGI, the results format
file is included in the results page at the location of the mgiSearchDatabase
tag. The results format file should contain only HTML, text, and MGI tags
that are not repeated for each result. For example, if your results
are displayed in a table with a row of headers, the table information and
the first row of column labels might be included in the results format
file since you do not want a new table and header row for each result that
is displayed. However, depending on your layout, you could include all
of the results formatting information in the results template file which
specifies the layout of each result (e.g. if you wanted a new table for
each result that is displayed).
-
- Within the results format file, you must at least include the mgiSearchResults
variable. When the results format file is parsed by MGI, the results template
file that specifies the layout of each search result will appear in the
location of the mgiSearchResults variable.
<mgiGet name="mgiSearchResults">
- If you included the mgiResultsLimitPopup variable in the search format
file or if the mgiResultsLimitPopup variable was not included in the search
format file and it is possible to return more than 25 search results, you
must include the mgiPreviousButton and mgiNextButton variables in the results
format file. These variables create a "Previous" and "Next"
button to step through multiple screens of results.
<mgiGet name="mgiPreviousButton"> <mgiGet name="mgiNextButton">
- In the Clothing database example, the search results are displayed
between the beginning and ending table tags. A "Search Results"
header and page instructions appear above the results. The "Previous"
and "Next" buttons appear below the search results (the form
actions for the Previous and Next buttons are entered automatically by
MGI). The following is the complete results format file for the Clothing
database:
<H3>Search Results</H3>
<p>The following results match the search criteria you entered.
Click the "Next" button to view additional results.
<CENTER><TABLE CELLSPACING="3" WIDTH="400">
<TR>
<TD WIDTH="350"><B>T-Shirt Description</B></TD>
<TD WIDTH="50" ALIGN="CENTER"><B>Price</B></TD></TR>
<TR>
<TD> </TD>
<TD> </TD></TR>
<mgiGet name="mgiSearchResults">
</TABLE>
</CENTER>
<p><center><mgiGet name="mgiPreviousButton">
<mgiGet name="mgiNextButton"></center>
Step 14: Save the results format file.
- Save the results format file and name it "resultsformat.txt",
the value of the resultsFormatFile parameter in the mgiSearchDatabase tag
on the search page.
Step 15: Create a results template file in a text editor.
- Create a new page in a text editing program to specify the layout of
each result in the results list. The results template file should contain
HTML, text, and MGI tags to display database information for each result.
The entire format of the results template file is repeated for each result
(whether there are 2 or 20) and the database information for each result
is dynamically displayed. For example, in the Clothing database example,
the Description and Price are dynamically displayed for each clothing result.
-
- To include database information for each result in the results template
file, use the mgiGet tag syntax. The name of the mgiGet tag specifies the
database field information to display. Keep in mind that the database field
names are case-sensitive.
<mgiGet name="DatabaseFieldName">
- In the Clothing database example, the each result consists of a table
row. In the table row, the t-shirt description, and price are displayed.
The following is the complete results template file for the Clothing database:
<TR>
<TD><mgiGet name="Description"></TD>
<TD ALIGN="RIGHT">
<P ALIGN=CENTER>$<mgiGet name="Price"></TD></TR>
Step 16: Save the results template file.
- Save the results template file and name it "resultstemplate.txt",
the value of the resultsTemplateFile parameter in the mgiSearchDatabase
tag on the search page.
Step 17: FTP the search page, results page format files and template
file to the web server running MGI.
- Upload the search page, results page, format files and template file
to the web server using an FTP program.
Step 18: View the search page in a browser and perform a search.
- View the search page in a web browser. The static elements of the search
page (e.g., logos, headers, navigation, etc.) and the search form (from
the search format file) are displayed. Enter a search into the search fields
and click the "Search" button. The search criteria is posted
to the results page. Static results information (from the results format
file) and a dynamic list of results (formatted according to the results
template file) that match your search display on the results page. The
list of results is ordered by the "design" field (as specified
by the orderByField parameter of the mgiSearchDatabase tag).
|