DB Access Methods

You can call the database through three access methods.


Query String Method

The QUERY_STRING method allows an anchor tag to call the notebook application. This method can only be used to read (do searches) from the database and delete specific entries. The syntax Follows. Notice that keywords name/value pairs are seperated by an underscore and not an ampersand. The keyword string is the value for the element 'keywords':

<a href=".....notebook.cgi?database=riverweb&user=keny&data=1&keywords= topstation_1,topindicator_nitrogen,bmptop_0,bottomstation_1, bottomindicator_nitrogen,bmpbottom_0">Search For Notebook Entries</a>

Exclusive searches can be performed ay adding AND NOT keywords. The following search will display all the data user 'keny' has that is type 2 and 3 (notes and answers) where the top station is 1/nitrogen/notimproved and any bottom station whose indicator is nitrogen. Since the 'bmpbottom' keyword was left out the search will return either improved or unimproved notes:

<a href=".....notebook.cgi?database=riverweb&user=keny&data=2,3&keywords= topstation_1,topindicator_nitrogen,bmptop_0,bottomstation_* &ANDNOTkeywords=bottomindicator_nitrogen">Search For Notebook Entries</a>

Additional query string elements enable the delete mechanism. In order to delete this way the user must be the same as the user specified in the registration process, (database[1]) and, additionally, there is an access key for the administrative user defined in the registration process as well. You can delete a specific key by calling the script with this method:

<a href=".....notebook.cgi?delete=ID#&user=admin&key=password">Delete ID here</a>


Form Method

The Form Method allows all methods of accessing the database. Here is a form that calls for a keyword search. The script automatically assumes a keyword search unless specific form elements exist that make the query different like 'delete':

<form method=post action="database.cgi">
    <input type="hidden" name="user" value="keny">
    <input type="hidden" name="database" value="riverweb">
    <input type="hidden" name="data" value="1,2,3">
    <input type="hidden" name="keywords" value="topstation=1,
    topindicator=nitrogen, bmptop=0, bottomstation=1,
    bottomindicator=nitrogen, bmpbottom=0,">
    <input type="submit" name="Submit" value="Submit">
</form>

Sorting Items that have the same keywords: The Notepad application will display the entries and data in an unorganized way if there is no sort order assigned. You can embed the sort order in the keywords and notepad will set all other relevant entries with the same keyword set to relative display priority. This only applies to data type 1. Data type 3, is relative to these questions. To link data of type 3 to a question, You add a name-value pair with the name 'link' and the value which is the ID# of the data type 1 (question) element you wish to link it to.


Interapplication Method

The Interapplication Method allows you to call the application from another existing script. You basically pass the keywords in a command line argument. Here is an example in PERL. This time, keywords are seperated by commas, name-value pairs use an equal sign:

system("/fullpathtofile/notepad.cgi -user keny -database riverweb -data 1,2,3 -keywords topstation=1,topindicator=nitrogen,bmptop=0,bottomstation=1,bottomindicator=nitrogen, bmpbottom=0");