PHP Classes

FiForms Framework: Framework for rapid Web application development

Recommend this page to a friend!
  Info   View files View files (44)   DownloadInstall with Composer Download .zip   Reputation   Support forum (1)   Blog    
Ratings Unique User Downloads Download Rankings
Not enough user ratingsTotal: 2,745 All time: 1,374 This week: 196Up
Version License PHP version Categories
fiforms 0.9.3GNU General Publi...5.0HTML, Databases, Libraries
Description Author

The FiForms Framework is an application development framework for building Web-database applications in XML, powered by MySQL and PHP. AJAX-enhanced forms, sub-forms, custom reports, and dynamically generated menus create a seamless user experience. The FiForms Framework lets you rapidly prototype and develop a Web/database front end using the latest PHP and XML technologies. It currently includes data-entry classes and XML report generation scripts. The libraries utilize the new XML capabilities of PHP 5 to create a framework for developing Web applications completely in XML languages.

Picture of Daniel McFeeters
Name: Daniel McFeeters <contact>
Classes: 1 package by
Country: United States United States
Age: 37
All time rank: 1155163 in United States United States
Week rank: 1092 Up119 in United States United States Up

FiForms Framework 1.1

This is the README for the FiForms Framework version 1.1. 
The FiForms Framework enables developers to build web/database 
applications rapidly in XML. Using the unique FiForms XML 
Application Markup, a developer can build a complete database 
application without writing a single line of PHP code. 

FiForms started as a collection of PHP classes for creating web-based data 
entry screens for a MySQL database. It has since grown into a collection 
of projects addressing many aspects of web-database development needs. 
The FiForms framework currently includes the FiForms data-entry classes 
and the FiReports XML report generation scripts. These libraries are 
combined scripts which utilize the new XML capabilities of PHP version 5 
to create a framework for developing web applications completely in XML. 

The latest version of this software is available at the following web site:


You can find documentation and setup instructions for the FiForms Framework
on the wiki:


Documentation for XML schemas can be found at

Quick Installation

To get FiForms up-and-running quickly, we suggest you follow the instructions
outline on the wiki page


Before you can use FiForms, you must have the following software installed on 
your system:

*   an operating system (of course)
        FiForms should work on any operating system that Apache and PHP
	will run on. Most of the development and testing of FiForms has
	been done on Linux, but it should also run under Windows, OS X,
	BSD, etc. 

*   an http webserver (works best on Apache webserver)

*   MySQL database server <> 
	FiForms works well with MySQL 4.0, 4.1, and 5.0. It should also 
	work with other versions.

*   a PHP interpreter <> FiForms requires PHP 5.x. 

*   Php.XPath (this is included with FiForms if you are installing using
        a pre-built package or installer)

*   XSLTProc (required if you will be using FiReportsXML with server-side
	      transformation, and you are not using PHP_XSLT)
	Install libxslt on your operating system and configure the path
	to XSLTProc in

	Note to windows users:  
        A package containing all the programs you need is available at

        This is a compliation of binaries available on Igor Zlatkovic' website: You can, alternativly, download
	libxml2, libxslt, iconv, and zlib from his website yourself. Extract 
	each zip file and copy the contents of each bin directory into 
	a single directory. Then point FIFORMS_XSLTPROC to the path you set.
	For example, if you copied the files to c:/libxml2, put this line 


*   A Web Browser (On each client machine)
      Recommended: Mozilla Firefox Web Browser

	Note: FiForms Forms should work fine in any browser
	     (Firefox, Lynx, IE, etc). Depending on the way you configure
	     the FiReport generator, you may require a browser that
	     supports XML and XSLT (Firefox and IE 6 both do). This is the
	     case if FiReports is configured for client-side transformation.
	     If it is configured for server-side transformation, you will
	     have to have xsltproc installed on the server but any browser
	     will work on the client (including Konqueror, Lynx, and older
	     version of IE which don't support XML). 

*    Jaxe or your favorite XML editor (
	This software can save you a lot of time in creating FiForms XML 
	applications. Jaxe configuration files for the FiForms XML schema
	are included in the package under example/jaxe. Simply copy these
	into your jaxe/config directory to start using them. 


Unzip the contents of the archive file into a new directory (if
you have not already done so). We recommend placing FiForms
outside of the DocumentRoot of your webserver, and configuring
an alias to the scripts/ directory of FiForms in your
webserver configuration.

Once FiForms is installed, direct your browser to the scripts path
in the new installation, for example, http://localhost/scripts/
or http://localhost/FiForms/scripts/ . You should be greeted
with a configuration screen, where you can set parameters. 

Follow the on-screen instructions to complete the installation.

Now you should be ready to start creating FiForms XML applications. 

Take a look at the examples included with this distribution. This
will show you how you can make some simple FiForms. Before you can use the 
sample scripts, you will need to set up the MySQL database FiForms_sample. Use
the included FiForms-sample.sql script to set up the database with the 
necessary tables. Of course, there are a lot more features in FiForms than are 
documented in the sample applications; please refer to the wiki and XML
documentation online.

5-Minute Tutorial

FiForms XML Application

Create a new directory structure under the apps directory in FiForms. The top 
level directory should be the name of your app. This directory should contain
three subdirectories named forms, menus, and reports. All directory names are
case-sensitive.  "Register" the application by creating the appinfo.xml
file in the application root. Create a Main Menu called main.xml in the menus 
directory. Place form and report definitions in their respective folders. 
References from the menu are relative to the base of their respective folders; 
i.e. you do not need to specify path in the href when linking to forms and 
reports from your menu. See the example application for more ideas.

FiForms PHP Application

Create your PHP scripts anywhere you want, but make sure the scripts are able
to find the include files. This can be done using .htaccess files similar to
the one in the example directory, or by adding the FiForms_includes directory
to your include_path in php.ini. 

For both XML Applications and PHP Applications, please make use of the example
files included with this distribution. 

Note: this method of creating applications is no longer recommended; please
consider creating your new applications in XML.


Founding Author: 
    Daniel McFeeters <databases at alltel dot net>

Contributing Authors: 
    Kristina Reeve <covrainbow at yahoo dot com>
    D. Kevin Burk <dkburk at gmail dot com>
    Jared Colangelo <pilotpencil at users dot sourceforge dot net>

    Kristina Reeve
        Development assistance, consultation, and inspiration to 
        keep this project going.
    The Somerset Oil Refinery <>
        Supporting development, testing software
    Jim McFeeters <>
        Teaching me programming, and helping with suggestions
	in several features of FiForms
    D. Kevin Burk
        For (indirectly) challenging me to write this
	in the first place. 


If you would like to contribute to this project, or if you have any questions 
or suggestions, send an e-mail to Daniel McFeeters <databases at alltel dot net>

Bugs and To-Do List

See the Wiki


    Copyright (C) 2003-2008  Daniel McFeeters

    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public
    License as published by the Free Software Foundation; either
    version 2 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    General Public License for more details.

    You should have received a copy of the GNU General Public
    License along with this library; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  Files folder image Files  
File Role Description
Files folder imageexample (4 files)
Files folder imageFiForms-includes (24 files)
Files folder imagescripts (2 files, 1 directory)
Accessible without login HTML file index.html Data Documentation Home Page
Plain text file LICENSE.txt Lic. GNU LGPL License
Accessible without login Plain text file README.txt Doc. Readme and installation instructions

  Files folder image Files  /  example  
File Role Description
  Plain text file FiForms-sample.sql Data Script to build a sample database for use with the example scripts
  Accessible without login Plain text file sample.php Example Extended example script
  Accessible without login Plain text file sample_subform.php Example Example subform
  Accessible without login Plain text file simple.php Example Short example script

  Files folder image Files  /  FiForms-includes  
File Role Description
  Plain text file Class Authentication Module using HTTP Basic Authentication
  Plain text file Class Main FiForms include script
  Plain text file Aux. Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Conf. Global FiForms Configuration File. Edit this for site-specific settings.
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Base class for almost all other FiForms Classes
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Aux. Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Supporting script
  Plain text file Class Base class for almost all other FiForms Classes
  Plain text file Aux. PHP function to get a single variable from MySQL

  Files folder image Files  /  scripts  
File Role Description
Files folder imagethemes (1 directory)
  Plain text file CalendarPopup.js Aux. CalendarPopup Javascript Functions
  Plain text file fiform.js Data External JavaScript functions

  Files folder image Files  /  scripts  /  themes  
File Role Description
Files folder imagecleanblue-png (3 files, 1 directory)

  Files folder image Files  /  scripts  /  themes  /  cleanblue-png  
File Role Description
Files folder imagepng-small (8 files)
  Plain text file CalendarPopup.css Data CalendarPopup Stylesheet
  Plain text file fiform_style.css Data CSS Stylesheet
  Plain text file iconset.php Class Icon Theme Script

  Files folder image Files  /  scripts  /  themes  /  cleanblue-png  /  png-small  
File Role Description
  Image file back.png Icon Back Button
  Image file delete.png Icon Delete Button
  Image file down.png Icon Down icon
  Image file first.png Icon First Button
  Image file forward.png Icon Forward Button
  Image file last.png Icon Last Button
  Image file new.png Icon New Button
  Image file sheet.png Icon Sheet Button

 Version Control Unique User Downloads Download Rankings  
This week:0
All time:1,374
This week:196Up
For more information send a message to info at phpclasses dot org.