UForm is a form validation/filtering/rendering library for PHP.
use UForm\Builder;
$form =
Builder::init("action", "POST")
->columnGroup()
->column(3, 12)
->text("firstname", "Firstname")->required()->stringLength(2, 20)
->text("lastname", "Lastname")->required()->stringLength(2, 20)
->close()
->column(3, 12)
->panel('Login Information')
->text("login", "Login")->required()->stringLength(2, 20)
->password("password", "Password")->required()->stringLength(2, 20)
->close()
->close()
->close()
->getForm();
//If it's a post request we validate the form with the post data
if ($_SERVER['REQUEST_METHOD'] == "POST") {
$formContext = $form->validate($form->getInputFromGlobals());
if ($formContext->isValid()) {
$filteredData = $formContext->getData();
// Do some logic with data
// ...
}
} else { // Or else we just generate a context with empty values
$formContext = $form->generateContext([]);
}
// We want to render some html for bootstrap 3
$formRenderer = new Bootstrap3Render();
$html = $formRenderer->render($formContext);
echo $html;
The above example will result in:
The full documentation will available at gsouf.github.io/UForm once the project will be considered as stable