Как можно уменьшить код например нужно обработать данные с форм email password.
Если каждый инпут проверять через if и выводить сессию об ошибке заполнения то получается куча одинакового кода.
Если сделать таким образом 'email' => 'required|max:255', то как потом можно собрать это всё вместе. Буду благодарен за компонент в
packagist/ как основу для понимания реализации.
$_POST['email']
$_SESSION['email']
'email' => 'required|max:255',
function validate()
{
$getForm = ['name', 'image', 'platforms', 'chipsets', 'manufacturers'];
for ($i=0; $i < count($getForm); $i++)
{
if (isset($_GET[$getForm[$i]]) && empty($_GET[$getForm[$i]])) return false; //$_SESSION['error']['required']
else return true;
}
}
if (validate())
{
if (setMotherboard($_GET['name'], $_GET['image'], $_GET['platforms'], $_GET['manufacturers'], $_GET['chipsets']))
{
header('Location: /get_motherboard.php');
exit;
}
}
<code lang="php">
class FormValidate
{
public static function validate ($params)
{
foreach($params as $key => $value)
{
//echo $key . ' ' . $value . '<br>';
//echo $params[$key] . '<br>';;
$params[$key] = explode('|', $params[$key]);
}
echo '<pre>';
var_dump($params);
echo '</pre>';
}
}
FormValidate::validate([
'email' => 'required|max:255',
'username' => 'required',
'password' => 'required'
]);
</code>