![]() Quick Links
Home View the codeThis code has been htmlified by vim. Download cgi.zip Changes
© 2000 Boudewijn Rempt |
CGI scripting and MySQLOne of my first projects was the scripting of a small CGI application for my wife, an on-line dictionary of the Valdyan Language. The application consists of a MySQL database, a CGI script for entering, updating and querying data and a report script to generate static html files because Irina doesn't want the whole world to be able to mess with her dictionary! I already had a similar application written in Free Pascal, and all I did was to translate that application into Python. Since then, several people, beginners just like I was, have expressed an interest in that code, and that's why I present it here, annotated and well. As you can see from the kpybrowser screenshot below, there are three modules: db.py, html.py and lex_valdyas.py. db.py connects to the database and is a very, very simple wrapper around MySQLmodule - which is a fairly old and unsupported binding to MySQL. Nowadays I use MySQLdb, which however returns the queried rows in a different format. html.py is a utility module that contains a lot of functions to simplify the generation of valid html. lex_valdyan.py is the script called by the webserver. It performs the database actions and generates the response forms. Nowadays I would split this into two modules, but it serves its function. The file v2html.py is a simple report that exports the contents of the database to html files. The file create_table.sql creates the datamodel, such as it is. ![]() |