1. Go to this page and download the library: Download popphp/pop-form library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
use Pop\Filter\Filter;
/** ... Code to create form **/
if ($_POST) {
$form->addFilter(new Filter('strip_tags'))
->addFilter(new Filter('htmlentities', [ENT_QUOTES, 'UTF-8']));
$form->setFieldValues($_POST);
if (!$form->isValid()) {
echo $form; // Has errors
} else {
$form->clearFilters();
$form->addFilter(new Filter('html_entity_decode', [ENT_QUOTES, 'UTF-8']));
echo 'Valid!';
}
} else {
echo $form;
}
$username = new Input\Text('username');
$username->addValidator(function ($value) {
if (strlen($value) < 6) {
return 'The username value must be greater than or equal to 6.';
}
});
use Pop\Validator\AlphaNumeric;
$username = new Input\Text('username');
$username->addValidator(new AlphaNumeric());
class MyValidator
{
public function validate($value)
{
if (strlen($value) < 6) {
return 'The username value must be greater than or equal to 6';
}
}
}
$username = new Input\Text('username');
$username->addValidator([new MyValidator(), 'validate']);
use Pop\Form\FormValidator;
use Pop\Validator;
$validators = [
'username' => new Validator\AlphaNumeric(),
'password' => new Validator\LengthGte(6)
];
$form = new FormValidator($validators);
$form->setValues([
'username' => 'admin$%^',
'password' => '12345'
]);
if (!$form->validate()) {
print_r($form->getErrors());
}
use Pop\Form\Form;
use Pop\Form\Fields;
use MyApp\Table\Users;
// The 4th parameter is an 'omit' to prevent certain fields from displaying
$config = Fields::getConfigFromTable(Users::getTableInfo(), null, null, 'id');
$form = Form::createFromConfig($config);
echo $form;