			       PHPGem
                    PHP Generator Modified v 2.4

The purpose of this project is creating of universal program working with
databases by means of Web. 

PHPGem is a program which permit to accelerate creating of PHP-scripts for
working with tables. PHPGem is also PHP-script. It works with different
SQL-servers: 

     PostgreSQL 
     Sybase SQL Server
     Interbase 
     MySQL 
     Adabas 
     mSQL 
     ODBC 

As input values you have to point out description and parameters of your
tables fields (field's name, on/off searching in the field, etc.). The
result of the program is another PHP-script which will work with this
tables (view table, view/add/edit/delete/duplicate entries, search in the
table). PHPGem can working with multi-level tables. Table can be
parent-table with several child-tables. There is example of hierarhy on
picture.

PHPGem supports the following "permissions": you can specify level of
permission for each table and for each field for each user. Permission
levels for tables are: NONE (min level),SELECT,INSERT,UPDATE,DELETE (max
level). Permission levels for fields are: NONE (min level),SELECT,UPDATE
(max level).

PHPGem also support images. Because of binary data depend on your
SQL-server, images store in directory. You can see small (scaled) image in
"view table" and "view entry" modes. Also you can see image of original
size and scaled image (from 4:1 to 1:4). 

			    Installation

  1.You have to have Web-server with PHP. It can be Apache of Thttpd.
     About Thttpd and PHP you can read on page with my instructions. 
  2.Untar distribution file somewhere in your HTML-tree of your
     Web-server. 
  3.Check that the user of your Web-server run has write-permissions in
     the newly created directory. 
  4.You have to edit themes/ *.global files manual (insert all
     information about your host and SQL-server in it). 
  5.You have to do manual editing of *.table files (insert all
     information about your tables in it ) and work with them in
     phpgem.php3 (in browser go to http://localhost/..path../phpgem.php3
     and choose necessary file). Possibilities of PHPGem are shown in 5
     examples (sample.table, sample.big.table, computers.table,
     PHPGem-PhotoAlbum photo.table , PHPGem-Files files.table ). 
     For generating of result PHP-scripts choose
     necessary table-file from phpgem.php3. Also you should choose host
     and theme information files from phpgem.php3 (they are in theme
     directory). Files for creating tables on SQL-server will locate in
     result project directory (.sql file was checked only in PostgreSQL).
     There is small description of commands in examples filesand in
     Table.Description file. Also you should look *.theme and especially
     jsdemo.theme files for getting more information about all options of
     PHPGem. 
  6.About permissins: you can set permissions=on in .table-file. As a
     result in the result project file there will be added a code which
     will check user's permissions for all user's operations. All
     information about user's permissions locate in permission_tbl for
     table tbl. PHPGem will generate filename_perm.table and copy it in
     the root PHPGem directory for work with it tables. SQL code for
     creating it you will get when select filename_perm.table from
     phpgem.php3. 
  7.PHPGem can generate HTML code with images (GD library is required for
     this). Ibutton.php3 program is used for drawing images. Description
     of ibutton.php3 is in this program. Font for text drawing is loaded
     from ttf-file. There is small utility (ttf/ttf_view.php3) for viewing
     of ttf-file. Use ttf/view_all_ttf.php3 program for viewing of all
     ttf-files in current directory. 
  8.You can specify type of links on the page generated by resulting
     program. Type of links: href (text), form (html form),image (text
     image), javascriptimage (2 images with different colors of border),
     buttonimage (image from file). Also you should look jsdemo.theme file
     for getting more information about type of buttons. You can redefine
     $demo_mode variable in result program for seeing possibilities of
     types of links. $demo_mode can be 0-4. 

       I would be obliged if you send me your NLS and theme files. 

                                 Feedback

Please, don't send me letters with "nothing works". Unfortunataly, I don't
have time for answering such letters. I can only give you advice: read
manuals on your Web-server, SQL-server and PHP. 

If you find a bug in PHPGem , please send me patch fixing this bug. Patch
will be included in the program. 

Attention: I use PostgreSQL. If you find any bug by working with other
SQL-servers, please send me patch fixing this bug. 

I would be glad if you send me your additions to PHPGem. 

Please send me your feedbacks or contributions by email: Nickolas Grebnev
(nick@grebnev.ru.net) 

				Download
You can fetch the latest version of PHPGem via HTTP from http://phpgem.ru.net.
Also you can fetch it from Metalab ftp server: 
ftp://metalab.unc.edu/pub/Linux/apps/database/www . 
