HTML_Progress makes it easy to build and display a progress meter on XHTML document
of your choice, and allows user to wait and see status during a long process
such a software installation. You get a more or less decent result with just the basic settings,
but itís also highly configurable, so you can almost get what you want.
The core class assigns context sensitive default values for most of the parameters
which minimizes the learning part. The features are there when you need it.
Table of Contents
This document is written as a guide to and reference for the HTML_Progress package, for both
beginner and expert users.
Why use HTML_Progress ?
There are some classes that exists, but never none of them as such degree of customization.
You can produce all kind of progress indicator you want: from basic horizontal bar, vertical bar,
to circle, ellipse, and even free polygonal shape.
- create horizontal, vertival bar and also circle, ellipse and polygons (square, rectangle)
- all elements (progress, cells, string) are customizable by their html properties
- percent/string is floating all around the progress meter
- compliant with all CSS/XHMTL standards
- integration with all template engines is very easy
- implements Observer design pattern. It is possible to add Listeners
- adds a customizable UI monitor pattern to display a progress bar. User-end can abort progress at any time.
- Look and feel can be sets by internal API or external config file
- Allows many progress meter on same page without uses of iframe solution
- HTML_Progress 1.2.0 works with PHP 5
It is assumed that you have installed both PHP and PEAR, and that you have rudimentary
use HTML_Progress since 1.2.0 without a PEAR installation, with some features restrictions.
See Appendix A. Installation for details.
It is also assumed that your PHP scripts are correctly interpreted by your web server.
In most case it will be probably Apache, but you may also have IIS. HTML_Progress runs both
on Windows and *nix.
What is new ?
First publish release of HTML_Progress on
PEAR website was on August 1st, 2003.
Its introduced the first attempt of stable API version. But as i wanted HTML_Progress
more open to future evolutions, i've redevelopped a second API more robust.
So versions 0.4.x, 0.5.x and 0.6.x are all incompatible with the new API introduced first
in version 1.0
- 2003-11-16 (version 1.0)
First attempt to:
- create a Progress Monitor solution.
- interactive tools to build progress bar (Progress Maker).
- 2004-02-14 (version 1.1)
- Second version of Progress Monitor, using the QuickForm rendering system.
- Progress Uploader was born: a web-ftp file uploads solution.
- Progress Generator became the next generation of Progress Maker.
- 2004-09-12 (version 1.2.0)
- new shapes such as circle, ellipse, square, rectangle are allowed.
- error plugin architecture to allows all error handler you might want.
- Progress Uploader was removed
- HTML_Progress_Model class was removed, but feature still exist.
HTML_Progress provides seven classes to help you use progress bars:
Data Model class
User Interface classes
This class provides methods for html code display and attributes handling.
It is a base class for other HTML classes and can be downloaded at PEAR under
This class provides a basic look and feel implementation of a progress bar.
This class provides an easy way to build and run demo of your own progress bar.
You can also save final PHP and/or CSS source-code.
HTML_Progress_Generator become the next generation of
interactive tools after ProgressMaker (included in HTML_Progress 1.0)
This class implements the observer pattern for watching progress bar activity
and taking actions on exceptional events.
This class allow an easy way to display progress in a dialog. The user can cancel
It requires another PEAR package, the
HTML_QuickForm package which
provides methods for creating, validating, processing HTML forms.
Getting this documentation
In the HTML_Progress 1.2.0 bundle you will find a windows help file (chm) and also a
portable document file (pdf) reading by acrobat reader.
You may also read this Definitive Guide online in HTML format at
All of these documentation examples are included into the HTML_Progress package bundle.
You can get the most up-to-date examples from the web site: