- Multiple inputs may be interconnected in such way that client side events that occur on one input can trigger actions on the context of other inputs. Developers may use input interconnection support without writing Javascript code.
- Can be extended with new types of input controls plug-in classes.
- Custom input plug-in classes can be used to support for handling client site events on the server side without submitting the form or redrawing the whole form page
- Some control plug-in classes are made available:
* AJAX based form submission (without reloading the whole page)
* Auto-complete text inputs
* Select a location on a map using Google Maps API
* Calendar date input
* CAPTCHA test to prevent automated access by robots
* Linked select input to switch select options when the value of another input changes. An unlimited number of selected can be linked in cascade. Additional plug-in subclasses are provided to retrive option groups from a MySQL database or many other SQL databases using the Metabase PEAR::MDB2 PHP database abstraction layer APIs
* Manage animations that apply visual effects to the page form elements, like: fade-in, fade-out, show, hide, update content, etc..
- XHTML compliant output.
- Load submitted form field values even with register_globals option Off and strip slashes when magic_quotes_gpc option is On.
- Keyboard navigation support:
* Attachment of labels with activation keys to each form field.
* Tab navigation order index.
- Built-in server side (PHP based) and client side (Javascript 1.0 or better) field validation for:
* E-mail address
* Credit card numbers (Visa, Mastercard, American Express, Discover, Diners Club, Carte Blanche, enRoute, JCB, any of these or even determined by a select field).
* Regular expressions.
* Field not empty.
* Field equal to another (useful for password confirmation fields).
* Field different from another (useful for reminder fields that must not be equal to the actual password).
* As set (for check boxes, radio buttons and select multiple fields).
* As integer number (with range limitation).
* As floating point number (with range limitation).
* Programmer defined client and server validation functions.
- Highlight invalid fields rendering them distinct CSS styles
- Security attack prevention by optionally discarding invalid values passed in fields that could not be edited by users but may be spoofed by attackers.
- Option to define a value that, when used in a field, it is accepted without performing any of the validations defined for the field.
- Ability to stop the user from submiting a form more than once inadvertdly.
- Sub form validation (validate only smaller set of field depending on the submit button that was used).
- Composition and generation of the form HTML output with fields displayed as fully accessible or in read-only mode.
- Generation of Javascript functions (useful to set to the page ONLOAD event):
* Set the input focus to a field.
* Select the text of a field.
* Set the input focus and select the text of a field.
* Enable and disable input fields
- Automatic capitalization of the text of a field:
* Upper case.
* Lower case.
* Word initials
- Replacement of text field expressions to perform adjustments like trimming whitespace or auto-complete values based on rules defined by regular expressions
- Compose forms with templates using plain HTML files with embedded PHP code or using the Smarty template engine with a supplied pre-filter plugin
- Etc.
This class is the ultimate MySQL database access wrapper.
It can:
- Establish MySQL server connections
- Execute SQL queries
- Query a single value or a single row
- Retrieve query results into arrays or resource objects
- Retrieve the last inserted ID
- Manage transactions (transaction processing)
- Retrieve the list tables of a database
- Retrieve the list fields of a table
- Retrieve the length or position of a field
- Measure the time a query takes to execute
- Display query results in an HTML table
- Format SQL parameters (safe against SQL injection hacks)
- Generate SQL
- Handle errors (optional Exception handling)
- Convert records into XML or JSON
- And MUCH more
All these feature while still blazing fast and low on memory and resources!
Ratings
Utility
Consistency
Documentation
Examples
Tests
Videos
Overall
Rank
All time:
Good (92.6%)
Good (91.0%)
Good (87.7%)
Good (86.9%)
-
-
Sufficient (72.9%)
106
Month:
There are not enough user ratings to display for this class.
This class can be used to split MySQL query results displayed in pages retrieved using AJAX.
It takes a MySQL query and computes the total number of rows it returns to generate HTML links in order to browse different pages of the query results.
Each page displays up to a given limit number of results.
The generated links trigger the execution of JavaScript code that retrieves the contents of the respective page using AJAX requests.
The class can also execute queries to perform searches for information in given columns.
It has a jquery plugin that handles requests and responses just for flexibility
CAPTCHA validation asking questions about pictures
This class can be used to implement a CAPTCHA validation method that asks questions about pictures to the user.
It presents several images and asks the user to answer a question related to the pictures. Only one picture is the right answers. The user has to pick the right picture to pass the validation.
The class presents the question and pictures in a form with radio buttons associated to each picture to let the user pick the right picture that answers the question.
The information about the pictures that the user picks is stored in a MySQL database.
Access data in MySQL tables using object notations
This package can be used to store and retrieve data in MySQL databases using intuitive object notations.
There are several classes that abstract the access to a MySQL database table in order to create, read, update and delete database table rows as if they were objects.
This class can be used to manipulate MySQL database table records displayed in a HTML table.
It displays a table with data from fields of a MySQL database table.
The table can display links for sort the listing by the clicked column and also to execute actions such as insert a new record, update and delete a record.
It uses AJAX to avoid reloading a page after executing each action.
Spell check texts with a MySQL table as dictionary
This class can be used to check the spelling of text.
It uses a MySQL database table to store the dictionary of valid words.
It can process a text and return all words that seem to be wrong. It may also highlight the wrong words using HTML tags to change the presentation style of the words to be highlighted.
For wrong words it may also provide a list of suggestions of words with similar sounding using the soundex algorithm.