ViewMaker is a set of functions written in PHP3 for helping in the building of a site accessing a complex database scheme. There is a binding for Postgres, and one for Mysql (alpha version). But writing a new one is easy.
it is built to be multi-lingual (from the user view). It uses the browser configuration to choose which language to use. Every messages are written in a separated file (one for each language).
With ViewMaker you can:
Just by defining the ViewMaker views (no SQL view is needed).
The first example is the WebDiary application. In fact you can only view some parts of my real diary
The second example is the address book part of WebDiary. You have a full access (read/write/delete) to this example as it is not my real address book. If you need some help for using it, go here.
The third example is the most complex application I wrote with ViewMaker. Its aim is to allow travel agencies to publish last minute offers. The customers will recieves patch files by mail to update an Access database (not provided). This application have the following special features:
For playing with this last example, you can login with test/test.
You must decompress the given archive in a directory reachable by Apache. Then, you must edit the local.inc & auth.inc files and create the Postgres tables with the create.pgsql file (change "nobody" to your apache's username in the "grant" lines).
Of course, you must have a running Apache with PHP3 and a running Postgres or Mysql.
You may need European date format for Postgres. Therefore, run the Postgres server like that:
postmaster -e ...
For using ViewMaker, you must:
This library is under the GNU LIBRARY GENERAL PUBLIC LICENSE. But of course, you are pleased to contact me if you use it. If you include it into a commercial product, you are pleased to send "donations" to me.
It's distributed with the WebDiary application and HTML pages as documentation.
You can download it: webDiary-2.0.tar.gz(~157Kb)
If you want only ViewMaker, remove all the .php3 files (appart from maybe addresses.php3 you'll keep as example)