Installation error
If you see the message "An error occurred during the registration process.", or any PHP error, or white page:
You have to enable the PHP CURL extension.
Restart your PHP server. Then the installer will work.
To help you, we need to understand and be able to reproduce your problem.
PHP Form Builder doesn't have any known bugs so far. The difficulties you may encounter are primarily due to your server's configuration or other parameters related to your project.
That's why it is essential to provide us with all the information we may need:
So please get in touch with us and send us the necessary information. We will do our best to help you quickly and efficiently.
If you refuse for any reason to give us the required information, we may not be able to help you effectively. In this case, no refund request will be accepted, except in specific situations.
If your problem isn't solved:
1 license = 1 domain + any subdomain
When you register:
You have to register both on your localhost & production server.
PHP Form Builder is checking your registration in two different ways:
It makes a primary verification each time you load a form, using your license.php
This one generates the ugly danger message if something's wrong.
The real strong verification is done once a week or month on the licensing server
If you pass the verification one time, i.e., post your form successfully, you can be 100% sure that all is ok.
Both will accept any subdomain, but you can't use different domain names extensions.
You have to buy a license for domain.xxx & another one for domain.yyy
& register both with their purchase number.
You can then use any subdomain on both.
If you see the message "An error occurred during the registration process.", or any PHP error, or white page:
You have to enable the PHP CURL extension.
Restart your PHP server. Then the installer will work.
You entered your purchase code with a trailing space.
This error occurs if you registered your license with a different URL (HTTP/HTTPS; www or without www) than the one you use to access your page.
The solution is to always use the same URL, for instance, https://www.your-domain.com
. Regardless of PHP Form Builder, it is a good practice to adopt. It will also improve your SEO.
A Regular license allows two installations - one for your localhost & the other for your production server.
If you want to change the installation URL (domain, folder, ...), you have first to uninstall PHP Form Builder from your initial URL. Then reinstall it on the new one.
To uninstall PHP Form Builder:
If for any reason you can't unregister your copy & want to reinstall it, please get in touch with me,
send me your purchase code & delete phpformbuilder/[your-domain]/license.php from your server.
I'll remove your installation license from the server then you'll be able to reinstall it elsewhere.
If your page is white or returns "HTTP ERROR 500", you have a PHP error.
To display the error message, you have to enable PHP display errors.
<?php
use phpformbuilder\Form;
use phpformbuilder\Validator\Validator;
// add the line below to your code :
ini_set('display_errors', 1);
If the ini_set() function does not work on your server, you have to turn display_errors On in your php.ini
If you installed PHP Form Builder in a subfolder make a global search / replace from your IDE to change all the includes at once:
<?php
// Search this:
include_once rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR) . '/php/phpformbuilder/phpformbuilder/autoload.php';
// Replace with this:
include_once rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR) . '/your-dir/phpformbuilder/autoload.php';
PHP Form Builder requires a single file, which is always called using PHP include_once() function :
<?php
include_once rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR) . '/php/phpformbuilder/phpformbuilder/autoload.php';
If the path to file inside parenthesis is wrong Form.php is not found.
You've got to set the right path leading to your phpformbuilder directory.
To solve the problem:
<?php
// replace "your-dir" with yours in the following line
include_once rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR) . '/your-dir/phpformbuilder/autoload.php';
OR
See Warning: include_once([...]) (same error, same solution)
PHP Form Builder uses the PHP mb_string extension to send emails with the correct encoding.
PHP mb_string extension allows working with a multi-byte encoding (UTF-8, ...).
PHP mb_string extension is not a default PHP extension but is enabled on most servers.
If it's not enabled on yours, you've got two solutions:
$charset = mb_detect_encoding($mergedHtml);
with:
charset = 'iso-8859-1';
if (function_exists('mb_detect_encoding')) {
$charset = mb_detect_encoding($mergedHtml);
}
You'll find your version number in the comments at the beginning of phpformbuilder/Form.phpOpen your browser's console (instructions here)
You have to solve all errors you see in the console. Errors probably come from your page content, not from phpformbuilder itself.
Be sure you include at first jQuery, THEN Bootstrap js, THEN phpformbuilder plugins code :
<!-- jQuery -->
<script src="//code.jquery.com/jquery.js"></script>
<!-- Bootstrap JavaScript -->
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<?php
$form->printIncludes('js');
$form->printJsCode();
?>
PHP Form Builder is optimized for fast loading.
It means that all the required plugins files (CSS & JavaScript) are automatically minified & concacenated.
When you make changes to the form these files are automatically regenerated.
The minified/concatendated files are located in phpformbuilder/plugins/min/[css|js]
You can always safely remove the css & js files located in these 2 folders.
They'll be regenerated and refreshed. This can in some cases solve cache issues.
When you're in development, you can call the unminified unconcatenated files this way:
// This will load the unminified unconcatenated files
$form->setMode('development');
In a few cases, your server may not be correctly configured. The consequence is that the plugins URLs are wrong.
Solution is to set the URL to plugins directory manually:
// Set URL to match your plugins directory
$form->setPluginsUrl('http://phpformbuilder/plugins/');
Included templates use a custom version of Bootstrap's css. You'll find it in phpformbuilder/templates/assets/stylesheets/bootstrap.min.css
.
Set the correct path from your form to this css :
<!-- Bootstrap CSS - Change path with your own -->
<link href="assets/assets/css/bootstrap.min.css" rel="stylesheet">
... Or replace with Bootstrap CDN :
<!-- Bootstrap CSS CDN -->
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
jQuery validation plugin is complex and can have unexpected behaviors if it encounters configuration issues or malformed HTML.
To solve this :
console.log
(un-comment) to find out what's going on.You have an error in your PHP SESSION settings.
If you see this message when you post a form, the PHP SESSION variables could not be registered due to some wrong settings on your server.
PHP Form Builder 6 is a major update. Here's how to update your code to upgrade to the version 6:
The PHP Form Builder now uses an autoloader. Include the autoloader instead of including individual files:
// old code:
include_once rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR) . '/php/phpformbuilder/phpformbuilder/Form.php';
// replace with:
include_once rtrim($_SERVER['DOCUMENT_ROOT'], DIRECTORY_SEPARATOR) . '/php/phpformbuilder/phpformbuilder/autoload.php';
Remove all the references to the fileuploader includes in your code. The fileuploader is now included in the autoload:
// remove all the references to the fileuploader includes in your code:
include_once $root . '/phpformbuilder/plugins/fileuploader/server/class.fileuploader.php';
This changelog only includes the changes for version 4 and earlier versions.
The latest changelog is available here on the home page.
version 4.5.7 (06/2021)
New Features:
- add a "readonly" option to the inputs in the drag & drop form builder
Improvements:
- 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 a new Bootstrap Input Spinner plugin ('+' and '-' buttons for number inputs)
Improvements:
- 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 behavior 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 a new 'no-auto-submit' attribute to the JavaScript validator plugin to allow to prevent the form submission after validation
(this allows to write custom Ajax requests, which is helpful 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 JavaScript validation with the file uploader plugin on required fields
- remove PHP warning with Form::clear() combined with dependent fields
- fix accidentally 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 the "disabled" attribute in the Drag & Drop Form Builder for individual checkbox/radio buttons
Improvements:
- 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 the 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 a new template with several Ajax forms loaded on the same HTML page
Improvements:
- 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 1.7 version
- update the formValidation XML code to be able to load multiple Ajax forms
- update the PHPMailer to the latest 6.1.8 version
Bug Fix:
- no known bug at this time!
version 4.5.3 (10/2020)
New Features:
- add a new template with Dependent select dropdown loaded with Ajax depending on parent select value
Improvements:
- 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)
Improvements:
- 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 a 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
Improvements:
- 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 the 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 a new "signature pad" plugin for electronic signatures (handwritten signatures in forms)
- add a new "litepicker" plugin (date/date range picker)
- add a new "date range picker" form in templates
- add a new "license agreement" form in templates
- update the "car rental form" template with the new date range 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 the possibility to add and position icons on the input and button elements
- load / save the JSON forms on the server as well as on disk
- drag and drop files from the "save on server" file browser
- save the JSON forms on the server in subfolders
- add JSON forms templates in the JSON forms folder
Improvements:
- 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 the date, date range, 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 behavior 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
Improvements:
- auto-scroll to the 1st error when PHP validation failed after POST
- upgrade the Bootstrap Select plugin to its latest version
Bug Fix:
- fix undefined location.ancestorOrigins in Firefox
version 4.3.1 (12/2019)
Improvements:
Bug Fix:
- fix new Recaptcha v3 async. loading issue
version 4.3 (09/2019)
Improvements:
- 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)
Improvements:
- 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
Improvements:
- 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/javascript-plugins.php#Recaptchav3-example
- new "POST with Ajax" template available - https://www.phpformbuilder.pro/templates/bootstrap-4-forms/post-with-ajax-form.php
Improvements:
- 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)
Improvements:
- add (very) strong protection for fileuploader plugin uploads
- live validator now auto-revalidate fields with Select2 & iCheck plugins on change event
Bug Fix:
- update the pickadate plugin to its latest (the previous version was buggy with Chrome's 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/javascript-plugins.php#optimization-with-loadjs
Improvements:
- 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 some new search forms in templates with Ajax search & tags
- add Ajax search in JavaScript plugins documentation
version 4.0.1 (02/2019)
Bug Fix:
- upgrade PHPMailer to the 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 information: https://www.phpformbuilder.pro/documentation/class-doc.php#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 JavaScript Form Validation plugin to the latest - now compatible with Foundation
- add JavaScript Form Validation icons
- add JavaScript Form Validation DEBUG mode
- update the Bootstrap Select plugin to the latest version - now compatible with Bootstrap 4
Improvements:
- 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 the 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 the latest version 2.0 (inline email css)
- edit phpformbuilder/mailer/phpmailer/extras/htmlfilter.php to remove the php7 warning
- now, Ladda buttons have correct settings when using different Ladda configurations simultaneously
Misc.:
- the default framework is now Bootstrap 4 (it 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)
Improvements:
- update server-side validation functions to accept empty values,
except for the validators whose internal logic make values required.
Details are available here: https://www.phpformbuilder.pro/documentation/class-doc.php#php-validation-methods
Bug Fix:
- fix licensing system timeshift issue
- fix the invalid feedback message with iCheck + bs4
- fix Ladda plugin behavior with grouped buttons
version 3.6.1 (07/2018)
Improvements:
- improve HTML parsing
- disable onload live validation
- improve dynamic fields template 2 behavior
- improve dependent fields selectors parsing with regex
Bug Fix:
- fix centered button groups with the Foundation grid
version 3.6 (06/2018)
New Features:
- add required registration
- add the LC-Switch plugin
Improvements:
- update documentation
- update PHPMailer to the latest (6.0.5) - (wrong version numbers in src files, same issue in PHPMailer GitHub)
version 3.5.2 (05/2018)
Improvements:
- Add support for PHP without mbstring extension
Bug Fix:
- Recaptcha server-side validation errors now display correctly with bs4 (they were 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.php#frameworks
- add the Invisible Recaptcha plugin
replace all Recaptcha v2 in templates with invisible Recaptcha except with ajax forms & multiple modals
- add a new "deferScripts" option to defer the loading of the plugins' scripts
default value: true
Improvements:
- 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)
IMPORTANT
This release includes a new fileuploader plugin with excellent new features.
The old fileupload plugin is now deprecated and will be removed in the next incoming version.
New Features:
- add a new awesome fileuploader plugin including image crop/resize tools
Improvements:
- 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 Javascript) 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 an 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)
It plays well with any CMS (WordPress, Joomla, Drupal, ...)
- add Documentation and screencast to use with CMS
- add Image Picker plugin
- add Image Picker Templates
Improvements:
- 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 the Select2 plugin - https://select2.github.io/
- add the Ladda plugin - https://github.com/hakimel/Ladda
- add the intl tel input plugin - https://github.com/jackocnr/intl-tel-input coupled with formvalidation
- add the centerButtons(boolean) function
- add some new options:
buttonWrapper (element)
centeredButtonWrapper (element)
centerButtons (boolean)
verticalCheckboxLabelClass (classname)
verticalRadioLabelClass (classname)
Improvements:
- upgrade all plugins to the latest version
- upgrade PHPMailer to latest 6.0 (required PHP 5.5+)
- improve documentation
- improve the use of several Recaptcha on the same page
- reopen the modal if the form has been posted with a 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 dependencies (css & js files)
(default: true) - details at https://www.phpformbuilder.pro/documentation/class-doc.php#printIncludes
- add Foundation framework options and templates
- add the Nice Check plugin to style Radio buttons and Checkboxes
- add templates theme switcher for Bootstrap & Material forms
Improvements:
- auto combine and minify all plugin dependencies (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 are now recognized in dependent fields (values with commas can be escaped)
- rename the "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 an issue with custom class attribute and addCountrySelect function
- fix an issue with radio button attributes on material forms
- fix css overflow with lists into dependent fields
version 3.0 (Major release - 05/2017)
IMPORTANT
More efficient & straightforward than ever, this release contains 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 instantiates validator and auto-validate required fields
- merge sendAdvancedMail and sendMail function
- add helperWrapper option
- add addHelper($helper_text, $element_name) shortcut function
- add the "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
Improvements:
- 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 the same container
- add Validator Spanish language (Thanks Hugo)
- minor performance improvements
Others:
- 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)
Improvements:
- better errors management on plugins path errors
- add support for several Recaptcha on the same page
Bug Fix:
- remove crossOrigin warning using the wordcharcount plugin
- solve a z-index issue with selectpicker & modal
Version 2.2.2 (01/2017)
Improvements:
- add support for several modal forms on the same page
- add support for several popover forms on the 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)
Security:
- update PHP Mailer Class to the latest (5.2.21)
Improvements:
- auto-trigger dependent fields on form load
- improve the 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 the Recaptcha plugin
- update the Fileupload plugin to its latest version
- add a new template default-db-values-form.php
- add a 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 the same wrapper
Bug Fix:
- missing required sign with radio and no classname
Version 2.0.3 (08/2016)
Improvements:
- Rewritten Dynamic Fields Template javascript to match any field
- update the sendAdvancedMail() function to convert posted arrays to comma-separated lists in emails automatically
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)
Improvements:
- Add Dynamic Fields Templates
Bug Fix:
- fix php7 warning (upload button not shown) using addFileUpload() function
version 2.0 (Major release - 07/2016)
IMPORTANT
All features are backward-compatible, except addCheckbox() function: 3rd argument ($name) has been removed.
$form->addCheckbox($group_name, $label, $name, $value, $attr = '');
$form->addCheckbox($group_name, $label, $value, $attr = '');
(see examples or main class doc for more information).
New Features:
- add the Material Design plugin
- add Material Design templates
- add the Modal plugin
- add the Popover plugin
- add the Pickadate plugin + Pickadate Material
- add XSS protection
- add CSRF protection
(documentation: https://phpformbuilder.pro/documentation/class-doc/index.html#security)
- add two functions for dependent fields:
- startDependentFields($parent_field, $show_values) ;
- endDependentFields();
- add Autocomplete plugin
- add support for input grouped with buttons (i.e., search input + btn)
- automatic scroll to the first field with an error
- add a third argument to the render function to allow returning form code instead of echo
Improvements:
- 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 empty
- checkboxes are automagically converted to an array of indexed values.
- add a new argument to render, printJsCode & printIncludes functions to return code instead of echo.
- beautify output if debug enabled
Updates:
- update the Bootstrap Select plugin to the latest version (v1.10.0)
Bug Fix:
- fix validation custom error message with 'between' function
- fix validation errors with dates + hasSymbol function
- fix a 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)
Improvement:
- improve register / clear system
New Features:
- add the Country select plugin
- add the Bootstrap select plugin
- add the Passfield plugin
- add the Icheck plugin
Version 1.2.7 (03/2015)
Bug Fix:
- fix the word-char-count plugin used on the same page with tinyMce + word-char-count.
Version 1.2.6 (03/2015)
Improvement:
- register array fieldnames in session to keep values when validation fails.
Version 1.2.5 (02/2015)
Improvement:
- add word-char-count support with tinyMce
Version 1.2.4 (12/2014)
New Features:
- add support for select into input groups
Improvements:
- input groups documentation & examples in fully detailed
Version 1.2.3 (12/2014)
New Features:
- add database utilities with the Mysql class
- add tinyMce (Rich Text Editor) plugin with responsivefilemanager
Improvements:
- add debug argument to print css/js includes & js code on screen
- support 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)
Updates:
- improve email sending with attached files
Version 1.2 (10/2014)
New Features:
- add the sendMail function
- add the sendAdvancedMail function
- add the groupInputs function
- add the btnGroupClass option
Updates:
- update the fileUpload plugin to the 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