			    PHPGem

                      PHP Generator Modified v 1.9

Target of this project - creating program working with databases over
Internet/Intranet. 

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, MySQL, mSQL, ODBC, Adabas). 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 (Life
      Demo), PHPGem-Files files.table (Life Demo)). 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,1,2. 

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

                          Where you can find it

You can fetch the latest version of PHPGem via HTTP from http://phpgem.ru.net 

                                   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) 
