Welcome to PHP Form Builder
PHP Form Generator - Save tons of programming hours

PHP Form Builder is a complete library based on a PHP class, allowing you to program any kind of form and layout them using the Drag & drop Form Builder and/or some simple PHP functions.

PHP Form Builder preview

PHP Form Builder is conceived for use with the most popular frameworks: Bootstrap 4, Bootstrap 3, Material Design, Foundation and can be configured for any other use.

It allows you to build any form from scratch or by customizing one of the 120+ templates provided

Optimized for very fast loading and maximum security.

Loved by 3500+ users

starstarstarstarstar 5 stars rating on Codecanyon (180+ ratings)

Buy PHP Form Builder Now

Customer Reviews


PHP Form Builder is a simple but powerful PHP Form class with which you can create complex forms easily.

PHP Form Builder is ready to use with Bootstrap, Foundation and Material Design themes, but can be easily adapted for other frameworks or as standalone. All you need is to match Form options with your framework.

Documentation is well-adapted for all types of users: PHP beginners as well as confirmed programmers.

Who is PHP Form Builder suitable for?

PHP Form Builder is perfect for creating all types of forms in any situation:

Please see Where to start ? section to find the best place to start depending on your skills.

PHP Form Builder at a glance

Build Bootstrap Forms

PHP Form Builder's default settings are Bootstrap ready.

PHP Form Builder is fully compatible with Both
Bootstrap 4 and Bootstrap 3.

Build Material Forms

Material forms are part of PHP Form Builder's package.
Switch from Bootstrap to Material with a single line of code.

Build Foundation Forms

Foundation now added to PHP Form Builder's package.

Build Standalone Forms

PHP Form Builder can adapt generated html to any framework,
or generate simple standard HTML5 elements.

120+ Form Templates

Each template is given with code you can easily copy / paste.
Code includes Live & Server side Validation and Email sending

Email Sending

Built-in function to send posted values easily.
Support for attachments and Custom E-Mail templates

Powerful jQuery plugins integration

Don't waste your time to include css & js files, generate js code, ...
PHP Form Builder will add any jQuery plugin in a very easy way and do all this job for you.

20+ jQuery plugins included

Best jQuery Form plugin included in package and ready to use to enhance your forms with file uploader, custom radio, checkboxes, select, pickers (date, time, color), captcha, ...

Maximum Security

Automatic XSS and CSRF protection - maximum level security

Server-side validation

Validate any field with any condition.
Your page will automagically scroll to user error if fields are not filled correctly.

Conditional logic

Show / Hide fields depending on user's choices
One easy function for all logic. Conditional fields can be nested.

Special forms

Ajax forms, Step forms, Modal forms, Popover forms, Accordion forms: Simple and easy integration with templates and full documentation.

- Fast & Efficient Professional Support -

We take care of each customer and do our best to give efficient help.

Where to start ?

Depending on your preferences:

Quick and easy form building

Drag & Drop
Form Generator
You'll just have to drag and drop the form elements, choose your settings then paste the generated code.

PHP Beginners

Beginners Guide
Tutorial for PHP beginners including full detailed explanations

PHP Programmers

Quick start Guide
Quick and easy start with minimum required.

About functions and how to

Class documentation
Full class documentation.
Code Samples
F.A.Q. with code examples to help with layout, icons, plugins, dependent fields and so on.
Functions reference
All functions & arguments.

Build a fully-working contact form in 2 minutes without any knowledge

Contact form in 2 minutes
If you just want a working contact form.

Package Structure

PHP Form Builder's package includes the Form Builder itself, the documentation and all the templates.

You don't have to upload all the files and folders on your production server.

Documentation and Templates are available online at https://www.phpformbuilder.pro/.
There's no need to upload them on your production server.

You only have to upload the following directories on your server:

The phpformbuilder folder structure

  • your-project-root
    • phpformbuilder Main form builder files including all the plugins
      • database Contains Mysql class. Not required if you have no database.
      • mailer Contains phpmailer class, the email templates and utilities to sanitize the emails contents and inline the emails css.
      • plugins Contains all the plugins. You can remove the ones you don't use in your forms.
      • plugins-config Contains all the plugins configuration files ("domready" codes stored into xml files). You can remove the ones you don't use in your forms.
      • plugins-config-custom Empty folder to store your plugin configurations files if you customize.
      • Validator PHP Validation class.
      • Form.php PHP Form Builder's main class.
      • FormatHtml.php PHP Class to beautify HTML output code
      • FormExtended.php Extends PHP Form Builder's main class with useful shortcut functions.
      • register.php required to register & activate your PHP Form Builder copy..
      • server.php file used for debugging purpose if you encounter paths issues on your server.


Themes (Frameworks)

All options are ready to use. Choose your framework when you instanciate your form, for example
$form = new Form('my-form', 'horizontal', 'novalidate', 'bs3');.

PHP Form Builder will generate the correct markup for you (containers, fields, classnames, ...)

Default'theme is Bootstrap 4.

Bootstrap 3

$form = new Form('my-form', 'horizontal', 'novalidate', 'bs3');

Bootstrap 4

$form = new Form('my-form', 'horizontal', 'novalidate');


$form = new Form('my-form', 'horizontal', 'novalidate', 'foundation');

Bootstrap 4 + Material Design

$form = new Form('my-form', 'horizontal', 'novalidate', 'material');

// materialize plugin
$form->addPlugin('materialize', '#my-form');

Material Design

$form = new Form('my-form', 'horizontal', 'novalidate', 'material');

License and Registration


1 License = 1 project

If you want to use PHP Form Builder on several websites you've got to buy a new license for each one.

Standard license vs. extended license


Before using PHP Form Builder you must register your copy.

Registration is for lifetime & just have to be done once for each installation (localhost/production server).

If you change your installation directory:

  1. open phpformbuilder/register.php to unregister your copy
  2. move your folders where you want to
  3. open phpformbuilder/register.php to register your new path

Upgrade PHP Form Builder

  1. Backup your phpformbuilder folder
  2. Replace your old phpformbuilder folder with the new one
  3. Copy your [your-domain]/license.php from your old installation to the new one
  4. Copy your phpformbuilder/database/db-connect.php from your old installation to the new one
  5. If you customized the following files/folders, copy them from your old installation to the new one:
    • phpformbuilder/mailer/email-templates-custom
    • phpformbuilder/plugins-config-custom
    • phpformbuilder/FormExtended.php

Upgrade from V 2.x to V 3.x

More efficient & simple than ever, this release contains some code simplifications, new features and new syntax to send emails.

All V 2.x features are still available using old V 2.x syntax, except for email sending.

sendMail() and sendAdvancedMail() functions have been merged into a single sendMail() function (see details below)


Plugins path

No need to setup plugins path anymore (it's now automagically detected).
(phpformbuilder/plugins-path.php has been removed)


Server-side validation

No need to include Validator files
Required fields can now be validated automagically

/* OLD CODE V 2.x */

include_once rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR) . '/phpformbuilder/Validator/Validator.php';
include_once rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR) . '/phpformbuilder/Validator/Exception.php';
$validator = new Validator($_POST);
$required = array('user-name', 'user-first-name', 'user-email', 'user-phone', 'message');
foreach ($required as $required) {

/* NEW CODE V 3.x */

// create validator & auto-validate required fields
$validator = Form::validate('contact-form-1');

// additional validation


Email sending

SendMail() function has now full capabilities to send attachments, add cc/bcc and a lot more.
See sendMail function for complete features list.

/* OLD CODE V 2.x */

$from_email = 'contact@phpformbuilder.pro';
$address = addslashes($_POST['user-email']);
$subject = 'phpformbuilder - Contact Form 1';
$filter_values = 'contact-form-1, submit-btn, token';
$sent_message = Form::sendMail($from_email, $address, $subject, $filter_values);

/* NEW CODE V 3.x */

$email_config = array(
'sender_email'    => 'contact@phpformbuilder.pro',
'sender_name'     => 'PHP Form Builder',
'recipient_email' => addslashes($_POST['user-email']),
'subject'         => 'PHP Form Builder - Contact Form',
'filter_values'   => 'contact-form-1'
$sent_message = Form::sendMail($email_config);

Visual Studio Code extension

PHP Form Builder Visual Studio Code extension is available on Visual Studio Code Marketplace

The extension adds auto-completions for all Form Builder functions.

PHP Form Builder Visual Studio Code Completions

Sublime Text plugin

PHP Form Builder Sublime Text plugin is available on Package Control

The plugin adds auto-completions for all Form Builder functions.

PHP Form Builder Sublime Text Completions

Changelog -

version 4.5.7 (06/2021)

New Features:
    - add "readonly" option to the inputs in the drag & drop form builder
    - improve the dropzone sizing  in the drag & drop form builder
Bug Fix:
    - popup close not working in the drag & drop form builder when clicking "no"

version 4.5.6 (05/2021)

New Features:
    - add new Bootstrap Input Spinner plugin ('+' and '-' buttons for number inputs)
    - add $mail->Sender in Form.php for PHPMailer to improve email deliverability
    - edit the Fileuploader PHP image upload script to crop the images AFTER resizing
      (the original behaviour that center-crops the original image is still available in the file code comments)
    - edit phpformbuilder/plugins-config/formvalidation.xml to accept empty tel numbers if they're not required
    - add new 'no-auto-submit' attribute to the jQuery validator plugin to allow to prevent the form submission after validation
      (this allows to write custom Ajax requests, useful in some cases like step forms)
    - increase the height of the drop area in the drag & drop form generator
Bug Fix:
    - validator now validates integers with leading zeros (PHP :: Bug #43372)
    - fix jQuery validation with the file uploader plugin on required fields
    - remove php warning whith Form::clear() combined with dependent fields
    - fix accidentaly removed classes with Material Design textareas
    - repair the Passfield plugin Bootstrap popover - was broken by the latest Bootstrap versions
    - fix error in Material Datepicker months (error coming from the original plugin)

version 4.5.5 (12/2020)

New Features:
    - add "disabled" attribute in the Drag & drop Form Builder for individual checkbox / radio buttons
    - sanitize directory separator in class/Form.php to avoid wrong plugins url detection on server with inconsistent $_SERVER['SCRIPT_NAME'] and $_SERVER['SCRIPT_FILENAME'] values
    - update the Passfield plugin to latest version, edit the plugin js file to solve a console error (& send a PULL request on Github)
Bug Fix:
    - fix file uploader plugin with editor set to false behavior

version 4.5.4 (11/2020)

New Features:
    - add new template with several Ajax forms loaded on the same HTML page
    - change the Ajax loader Javascript to be able to load multiple Ajax forms on the same page easily
    - update the formValidation plugin to the latest version 1.7
    - update the formValidation xml code to be able to load multiple Ajax forms
    - update the PHPMailer to the latest version 6.1.8
Bug Fix:
    - no known bug at this time!

version 4.5.3 (10/2020)

New Features:
    - add new template with Dependent select dropdown loaded with Ajax depending on parent select value
    - add data-format-submit to material date/time pickers
    - auto-sanitize filenames with the Fileuploader plugin
Bug Fix:
    - sanitize email sent_message in the drag & drop form builder
    - replace the material timepicker deprecated "onClose" event with "onCloseEnd"
    - fix date value with date pickers when a form is posted with errors
    - fix deprecated curly braces in phpformbuilder/mailer/phpmailer/htmlfilter.php

version 4.5.2 (07/2020)

    - auto-enable the Form validation plugin to the drag and drop default form
    - make the Form validation plugin translations available in the drag and drop form main settings
    - add an alert message when the form contains a submit button named "submit" with the Formvalidation plugin.
      ("submit" is a reserved name for the Formvalidation plugin)
    - add an alert message when the form contains an hidden field with the required attribute with the Formvalidation plugin.
      (the Formvalidation plugin doesn't allow this)
    - upgrade Material date / time pickers + i18n
    - add litepicker plugin custom css
Bug Fix:
    - properly escape the drag and drop form labels, placeholders, icons and attributes (2nd attempt ...)
    - lc_switch labels now will toggle the switch as intended (the bug comes from the LC_switch plugin itself, PHP Form Builder will now compensate it)
    - fix Javascript error with non-required checkboxes + icheck plugin + Formvalidation plugin
    - update links to the drag-and-drop from .php to .html

version 4.5.1 (06/2020)

New Features:
    - add the formvalidation plugin to the drag & drop builder
    - fix php 7.4 warnings
    - add optional SMTP settings in the email test/debug file
Bug Fix:
    - fix drag and drop iframe preview in Firefox + Edge browsers
    - properly escape the drag and drop form labels, placeholders, icons and attributes
    - fix selectpicker problem when used on several fields
    - fix file uploads with the same file name issue. The uploaded files are now renamed with a suffix if they already exist.
    - fix material base js for bs4 forms with material pickers

version 4.5 (05/2020)

New Features:
    - add new "signature pad" plugin for electronic signatures (hand written signatures in forms)
    - add new "litepicker" plugin (date / daterange picker)
    - add new "date range picker" form in templates
    - add new "license agreement" form in templates
    - update the "car rental form" template with the new daterange picker plugin
    - add "isHTML" + "textBody" options in sendMail() function
    Drag and Drop form Builder:
        - Choice of field widths (33%, 50%, 66%, 100%)
        - possibility to group 2 fields on the same line (horizontal forms)
        - choice of the icon library used and possibility to add and position icons on the input and button elements
        - load / save the JSON forms on server as well as on disk
        - drag and drop files from the "save on server" file browser
        - save the JSON forms on server in subfolders
        - add JSON forms templates in the JSON forms folder
    - accessibility: add aria-label automatically for all fields that have a placeholder and no label text
    - move the Bootstrap 4 error messages below the helper texts when inputs have addons (icons, ...)
    - the drag and drop form builder will now throw an alert if the user leaves the page without having saved the changes
    - disable browser autocompletion automatically for date, daterange and time pickers
    - change the website search for a far better one
    - change the website chat widget
Bug Fix:
    - fix redirection after success in the drag and drop form builder
    - fix a drag and drop form builder error in JSON with the intlTelInput plugin
    - fix checkbox states memorization in the drag and drop form builder
    - fix customer-satisfaction-step-form behaviour on window resizing
    - fix missing quotes in JSON files for checkboxes in the drag and drop tool
    - fix material-base.min.js JS console error

version 4.4 (03/2020)

New Features:
    - New Drag & drop Form Builder
    - auto-scroll to the 1st error when PHP validation failed after POST
    - upgrade Bootstrap Select plugin to latest version
Bug Fix:
    - fix undefined location.ancestorOrigins in Firefox

version 4.3.1 (12/2019)

Bug Fix:
    - fix new recaptcha v3 async. loading issue

version 4.3 (09/2019)

    - update the licensing system to allow registration on domain aliases
      IMPORTANT: if you upgrade from a previous version you must first unregister your license,
                 then upload the new package and register again.

version 4.2.5 (02/2019)

Bug Fix:
    - fix material pickers javascript errors

version 4.2.4 (06/2019)

    - add security checks on file removal with the fileuploader plugin
    - group security checks in a single readable file for the fileuploader plugin

version 4.2.3 (06/2019)

New Features:
    - add dependent field example in switches-form.php templates
    - Dependent fields now play nice with LCSwitch
Bug Fix:
    - fix buggy LCSwitch events with Bootstrap 3

version 4.2.2 (05/2019)

New Features:
    - add Visual Studio Code extension - https://marketplace.visualstudio.com/items?itemName=Miglisoft.phpformbuilder
    - add Recaptcha V3 - https://www.phpformbuilder.pro/documentation/jquery-plugins.php#recaptchav3-example
    - new "POST with Ajax" template available - https://www.phpformbuilder.pro/templates/bootstrap-4-forms/post-with-ajax-form.php
    - update the fileuploader plugin to latest V2.2
    - rebuild the phpformbuilder.pro website custom search engine
    - Dependent fields selectors now accept any fieldnames & loop indexes
    - update templates with latest Bootstrap 4 / jQuery / font awesome
    - replace invisible Recaptcha with Recaptcha V3 in templates
    - update Sublime Text plugin
Bug Fix:
    - label sizing for Bootstrap 4
    - main radio & checkbox label horizontal alignment with latest Bootstrap 4.3.1

version 4.2.1 (04/2019)

- add (very) strong protection for fileuploader plugin uploads
- live validator now auto-revalidate fields with Select2 & iCheck plugins on change event
Bug Fix:
    - update pickadate plugin to latest (previous version was buggy with Chrome latest update)
    - fix pickadate timepicker use with translation

version 4.2 (03/2019)

New Features:
- new function useLoadJs (https://github.com/muicss/loadjs):
  $form->useLoadJs($bundle = '');
  see https://www.phpformbuilder.pro/documentation/jquery-plugins.php#optimization-with-loadjs

- Prevent form submission while a file upload is in progress
- Misc minor improvements & code optimization

version 4.1 (03/2019)

New Features:
- add Tag Editor plugin for Ajax Search with Sortable Tags results
- add new search forms in templates with Ajax search & tags
- add Ajax search in jQuery plugins documentation

version 4.0.1 (02/2019)

Bug Fix:
    - upgrade PHPMailer to latest 6.0.6 to fix PHP 7.3 warnings

version 4.0 (Major release - 12/2018)

New Features:
- new Material forms - use with Bootstrap 4 OR materialize framework as standalone
  more informations: https://www.phpformbuilder.pro/documentation/class-doc.html#frameworks
- new material-datepicker plugin for Material forms + Bootstrap 4 forms
- add Select2 Material theme
- new setMode function
  development mode loads the original plugin CSS & Javascript dependencies
  production mode (default) compile & compress all the plugins CSS & Javascript dependencies
- new adAddon function to add button & text addons to input & select dropdowns
- add templates with addons examples: phpformbuilder/templates/[framework]/input-with-addons.php
- update jQuery Form Validation plugin to latest - now compatible with Foundation
- add jQuery Form Validation icons
- add jQuery Form Validation DEBUG mode
- update Bootstrap Select plugin to latest - now compatible with Bootstrap 4
- rewrite all the plugins configuration
  now most plugins accept HTML5 data-attributes for easy configuration
- rewrite all website, documentation & code examples for Bootstrap 4
- change the website structure
  now all the plugins have a dedicated page with code & examples
- remove the smtp option from sendMail function
    now smtp is automatically enabled when $smtp_settings are filled.
- improve Ajax scripts loading (avoid browser console warning about deprecated Synchronous XMLHttpRequest on the main thread)
Bug Fix:
- solve plugins URL detection with paths containing uppercase letters
- update Emogrifier to latest version 2.0 (email inline css)
- edit phpformbuilder/mailer/phpmailer/extras/htmlfilter.php to remove php7 warning
- now ladda buttons have correct settings when using different ladda configurations simultaneously
- the default framework is now Bootstrap 4 (was previously Bootstrap 3)
- remove the old Material Design forms based on Bootstrap 3 + old version of Materialize
- remove the old ugly jQuery-ui datepicker
- remove the "pickadate material" config
- remove deprecated templates which used the deprecated jQuery File Upload plugin
- remove deprecated jQuery File Upload plugin

version 3.6.2 (08/2018)

- update server-side validation functions to accept empty values,
    except for the validators whose internal logic make values required.
    Details available here: https://www.phpformbuilder.pro/documentation/class-doc.html#php-validation-methods
Bug Fix:
- fix licensing system timeshift issue
- fix invalid feedback message with iCheck + bs4
- fix Ladda plugin behaviour with grouped buttons

version 3.6.1 (07/2018)

- improve html parsing
- disable onload live validation
- improve dynamic fields template 2 behaviour
- improve dependent fields selectors parsing with regex
Bug Fix:
- fix centered button groups with Foundation grid

version 3.6 (06/2018)

New Features:
- add required registration
- add LC-Switch plugin
- update documentation
- update PHPMailer to latest (6.0.5) - (wrong version numbers in src files, same issue in PHPMailer github)

version 3.5.2 (05/2018)

- Add support for PHP without mbstring extension
Bug Fix:
- recaptcha server-side validation errors now display correctly with bs4 (they where hidden by bs4's display:none css)
- fix server-side Recaptcha validation (which always returned true before)
- fix server-side validation errors markup inside input groups

version 3.5.1 (04/2018)

Bug Fix:
- fix live validation issue with invisible recaptcha

version 3.5 (04/2018)

New Features:
- switch Foundation forms to Foundation 6.4+
  older versions are still available as 'foundation-float-grid' framework
  doc: /documentation/class-doc.html#frameworks
- add Invisible Recaptcha plugin
  replace all recaptcha v2 in templates with invisible recaptcha except with ajax forms & multiple modals
- add new "deferScripts" option to defer the loading of the plugins scripts
  default value: true
- all scripts are now loaded with defer
- add code to reload uploaded files if forms are sent with errors in fileupload templates
Bug Fix:
- fix plugins loading with ajax and forms reloaded with errors

version 3.4 (04/2018)


This release includes a new fileuploader plugin with awesome new features.

The old fileupload plugin is now deprecated and will be removed in the next incoming version.

New Features:
- add new awesome fileuploader plugin including image crop/resize tools
- switched Bootstrap 4.0.0-beta.3 to 4.1
- improve plugins code if several forms are using the same selectors & same plugins
- Add Bootstrap 4 Form Validation (live jQuery) i18n support in phpformbuilder/plugins-config/formvalidation.xml
- Rewrite step forms code
Bug Fix:
- fix php 7.2 warning with email sending - Parameter must be an array or an object that implements Countable
- Formvalidation now works fine with intl-tel-input and i18n (custom languages)
- Email sending will no more fail with empty css file template

version 3.3 (12/2017)

New Features:
-   add ajax option (easy Ajax loading to load the forms in any html file)
    Plays well with any CMS (Wordpress, Joomla, Drupal, ...)
-   add Documentation and screencast to use with CMS
-   add Image Picker plugin
-   add Image Picker Templates
-   upgrade PHP Mailer to the latest version
-   auto-filter token and submit buttons from email contents
Bug Fix:
- several minor fixes

version 3.2 (12/2017)

New Features:
-   add Bootstrap 4 support
-   add 40 Bootstrap 4 Templates
-   add Select2 plugin - https://select2.github.io/
-   add Ladda plugin - https://github.com/hakimel/Ladda
-   add intl tel input plugin - https://github.com/jackocnr/intl-tel-input coupled with formvalidation
-   add centerButtons(boolean) function
-   add new options:
        buttonWrapper                   (element)
        centeredButtonWrapper           (element)
        centerButtons                   (boolean)
        verticalCheckboxLabelClass      (classname)
        verticalRadioLabelClass         (classname)
-   upgrade all plugins to the latest version
-   upgrade PHPMailer to latest 6.0 (required PHP 5.5+)
-   improve documentation
-   improve the use of several recaptchas on the same page
-   reopen modal if the form has been posted with recaptcha error
-   validate all generated code with Bootlint & W3C
    note: some of the included plugins (Bootstrap select, iCheck, jQuery file upload) generate Bootlint non-valid html
-   add Russian and Ukrainian languages to the server Validator (thanks to Ramstud)
-   update dynamic fields form 1 template with required dynamic fields and server + live validation
Bug Fix:
- php warning with button group + label
- php warning with inline forms

version 3.1 (07/2017)

New Features:
- add $combine_and_compress argument to printIncludes() function to combine and minify all plugin dependancies (css & js files)
  (default: true) - details at https://www.phpformbuilder.pro/documentation/class-doc.html#printIncludes
- add Foundation framework options and templates
- add Nice Check plugin to style Radio buttons and Checkboxes
- add templates theme switcher for Bootstrap & Material forms
- auto combine and minify all plugin dependancies (css & js files)
- make recaptcha fully responsive
- allow to wrap radiobuttons with addInputWrapper function
- switched setPluginsUrl() function to public and add "$forced_url = ''" optional argument to allow manual plugins URL configuration if user's server is misconfigured.
- escaped commas now recognized in dependent fields (value with comma can be escaped)
- rename "dependent fields" plugin to "dependent fields" (sorry ... confusion with French spelling ...)
Bug Fix:
- fix issues with complex nested dependent fields and jQuery live validation
- fix issue with custom class attribute and addCountrySelect function
- fix issue with radio button attributes on material forms
- fix css overflow with lists into dependent fields

version 3.0 (Major release - 05/2017)


More efficient & simple than ever, this release contains some code simplifications, new features and new syntax to send emails.
To upgrade from version 2.X, see Upgrade PHP Form Builder section.

New Features:
- add static function Form::validate('form-id');
  Form::validate function instanciates validator and auto-validate required fields
- merge sendAdvancedMail and sendMail function
- add helperWrapper option
- add addHelper($helper_text, $element_name) shorcut function
- add "inverse" argument to Dependent fields
- auto-disable dependent fields when they're hidden
- add custom plugins config directory
- public non-static methods can now be all chained
- auto-locate plugins directory & url (phpformbuilder/plugins-path.php has been removed)
- add optional $fieldset_attr & $legend_attr arguments to startFieldset() function
- improved jQuery validation with Bootstrap collapsible panels
- now up to 12 fields can be grouped into same container
- add Validator Spanish language (Thanks Hugo)
- minor performance improvements
- add tooltip-form template
- update templates according to new features
- update documentation

Version 2.3 (02/2017)

New Features:
- add jQuery real time validation plugin ($50 value)
- better errors management on plugins path errors
- add support for several recaptchas on same page
Bug Fix:
- removed crossOrigin warning using wordcharcount plugin
- solved z-index issue with selectpicker & modal

Version 2.2.2 (01/2017)

- add support for several modal forms on same page
- add support for several popover forms on same page
- add several modal forms on same page templates (Bootstrap + material)
- add several popover forms on same page templates (Bootstrap + material)
- better errors management on plugins path errors
- minor improvements in documentation

Version 2.2.1 (01/2017)

Bug Fix:
- add "phpformbuilder/mailer/phpmailer/extras" folder to package, missing in previous release

Version 2.2 (01/2017)

- update PHP Mailer Class to latest (5.2.21)
- auto-trigger dependent fields on form load
- improve main form attributes compilation
Bug Fix:
- add one missing translation in de
- remove php warning on selects with no option
- fix missing line breaks in emails

Version 2.1 (10/2016)

New Features:
- add Recaptcha plugin
- update Fileupload plugin to latest version
- add new template default-db-values-form.php
- add new template fileupload-test-form.php
- add default values [from database|from variables] in 'how-to' documentation
- add a 4th optional argument to group 4 inputs in same wrapper
Bug Fix:
- missing required sign with radio and no classname

Version 2.0.3 (08/2016)

- Rewritten Dynamic Fields Template javascript to match any field
- update sendAdvancedMail() function to automagically convert posted arrays to comma separated lists in email

Version 2.0.2 (08/2016)

Bug Fix:
- fix dependent select with checkboxes
- fix custom attributes with checkbox groups

Version 2.0.1 (08/2016)

- Add Dynamic Fields Templates
Bug Fix:
- fix php7 warning (upload button not shown) using addFileUpload() function

version 2.0 (Major release - 07/2016)


All features are backward-compatible, except addCheckbox() function: 3rd argument ($name) has been removed.

(see examples or main class doc for more informations).

New Features:
- add Material Design plugin
- add Material Design templates
- add Modal plugin
- add Popover plugin
- add Pickadate plugin + Pickadate Material
- add XSS protection
- add CSRF protection
        (documentation: https://phpformbuilder.pro/documentation/class-doc/index.html#security)
- add 2 functions for dependent fields:
        -   startDependentFields($parent_field, $show_values) ;
        -   endDependentFields();
- add Autocomplete plugin
- add support for input grouped with button (ie: search input + btn)
- automatic scroll to first field with error
- add third argument to render function to allow returning form code instead of echo
- restructure package
- rewrite all documentation
- add php beginner's guide
- rewrite & optimize several Form functions
- better error fields rendering for grouped fields
- zero value will not be anymore considered as empty
- checkboxes are automagically converted to an array of indexed values.
- add new argument to render, printJsCode & printIncludes functions to return code instead of echo.
- beautify output if debug enabled
- update Bootstrap Select plugin to latest version (v1.10.0)
Bug Fix:
- fix validation custom error message with 'between' function
- fix validation errors with dates + hasSymbol function
- fix wrong comma added in some cases with select option attr.

Version 1.3.1 (10/2015)

Bug Fix:
- fix reply_to issue in sendAdvancedMail function

Version 1.3 (05/2015)

- improve register / clear system
New Features:
- add Country select plugin
- add Bootstrap select plugin
- add Passfield plugin
- add Icheck plugin

Version 1.2.7 (03/2015)

Bug Fix:
- fix word-char-count plugin used on the same page with tinyMce + word-char-count.

Version 1.2.6 (03/2015)

- register array fieldnames in session to keep values when validation fails.

Version 1.2.5 (02/2015)

- add word-char-count support with tinyMce

Version 1.2.4 (12/2014)

New Features:
- add support for select into input groups
- input groups documentation & examples fully detailed

Version 1.2.3 (12/2014)

New Features:
- add database utilities with Myql class
- add tinyMce (Rich Text Editor) plugin with responsivefilemanager
- add debug argument to print css/js includes & js code on screen
- support of multiple fileUploads on the same page

Version 1.2.2 (10/2014)

New Feature:
- add word / character count plugin
Bug Fix:
- Fix object context error with php < 5.4

Version 1.2.1 (10/2014)

- improve email sending with attached files

Version 1.2 (10/2014)

New Features:
- add sendMail function
- add sendAdvancedMail function
- add groupInputs function
- add btnGroupClass option

- update fileUpload plugin to last version

Bugs Fixes:
- Fix default checkbox wrapper html
- Fix plugin path with only fileUploads

Version 1.1 (09/2014)

Bugs Fixes:
- Fix Validator compatibility with 32/64 bit systems
- Fix object context error with php < 5.4

Version 1.0 (09/2014)

PSR2 Standard support
Check for security vulnerabilities
Add documentation

Sources & Credits

Thanks so much to:

About Responsive File Manager

Responsive File Manager is under Creative Commons Attribution-NonCommercial 3.0 Unported License.
The author kindly allowed me to include it with PHP Form Builder.
PHP Form Builder users are allowed to use it without limitation for non-commercial projects.

If you want to use Responsive File Manager in commercial projects, please contact the author and ask him for his agreement. A small donation is welcome.



I'm a french web developer ; I work on many enthusiastic project for clients as freelancer, mainly handmade websites or web applications.

I spend time each day helping people using PHP Form Builder all over the world

Feel free to contact me about any project / request

Other web tools sold on Codecanyon:

PHP CRUD Generator

PHP CRUD Generator
PHP CRUD Generator
Simple application to build Bootstrap backoffice for your website

Slider Maker - jQuery slideshow builder

jQuery Slideshow builder
How to build jQuery slideshows & galleries without coding
Login to admin panel and build high quality responsive slideshows in a visual way

TinyMce Bootstrap plugin

Bootstrap toolbar for tinyMce
TinyMce plugin to insert Bootstrap elements into your page
Wordpress & Joomla versions available


DMCA Sender - Anti-Piracy solution

DMCA Sender - Anti-Piracy solution
DMCA Sender - Online SaaS application to find illegal download links to your softwares & applications.
Auto-send your DMCA Takedown Notice

Subscribe to our mailing list
Keep informed of the latest updates - maximum 2 or 3 posts per year

* indicates required