Я создаю сайт в PHP, который вводит более 20 полей от пользователя. Вряд ли 3-4 значения поля являются обязательными, остаток может быть оставлен пустым. Я хочу отображать собственное сообщение об ошибке вместо пустого или нулевого или нулевого значения при отображении этих значений. Как это может быть сделано? Я использую MySQL как бэкэнд.
Я предполагаю, что вы используете массив $_POST.
В этом случае вы можете просто сделать:
$errors = array();
foreach($_POST AS $key => $value) {
if(empty($value)) {
$_POST[$key] = "Custom error message"; // Or place it in an apart array like:
$errors[$key] = "Custom error message";
}
}
Вы также можете сразу распечатать сообщение на экране. Это вам.
Кроме того, вы когда-нибудь рассматривали библиотеку Validation, например:
http://kohanaframework.org/guide/security.validation
Удачи!
<?php
$var1 = 'Foo';
$var2 = '';
$var3 = NULL;
echo ( ! empty($var1)) ? $var1 : 'Not set!'; // Foo
echo ( ! empty($var2)) ? $var2 : 'Not set!'; // Not set!
echo ( ! empty($var3)) ? $var3 : 'Not set!'; // Not set!
/**
* Alternative function solution based on OP comment:
*/
function output($str)
{
echo ( ! empty($str)) ? $str : 'Not set!';
return TRUE;
}
output($var1); // Foo
output($var2); // Not set!
output($var3); // Not set!
output()
для отображения переменной (если она не пустая) или echo Not set!
в противном случае.
foreach
? А что насчет массива $ _POST?