Отображение и обработка ошибок

Комментарии ()

Обработка ошибок возложена на класс Error

Сессии:

$_SESSION['error']['flag'] - true|false. true - есть ошибка

$_SESSION['error']['val'][$key]=$value - массив ошибок (по ключу). $key - id елемента, $value - текст ошибки (может быть в виде мультиязычной константы)

$_SESSION['error']['data'] - массив с даными. Обычно это $_POST чи $_GET

Включение режима ошибки на примере файла обработки авторизации auth_auth_post.php:

...
$error->setError();
$error->setErrorVal('error_main', 'error_auth_');
$error->setData($_POST);
$user->redirect(_WWW . 'auth/auth/');
exit;

Если необходимо вывести информацию об ошибке возле поля ввода

$error->setErrorVal('name', 'ошибка ввода!');

возле елемента ввода формы с id=name, будет отображено сообщение об ошибке: ошибка ввода!

В качестве текста ошибки, можно использовать мультиязычную константу

$error->setErrorVal('name', 'error_input_');

само собой разумеется, ее нужно предварительно создать в "словаре"админпанели.

Вывод ошибки

Выводом ошибок занимается js-функция checkRule, основным назначением которой является валидация. В даном случаи она вызывается без переметров. Например

<script>
$(document).ready(function(){
checkRule();
$('#btn_login').click(function(){
	if (checkRule('auth'))
	{
		$('#form_auth').submit();
	
	} 
})

})
</script>

После вывода, режим ошибки выключается автоматически

В шаблоне должен присутствувать div для вывода информации о ошибке

<div class="alert alert-error hide" id="error_main"></div>

 


Webit.in.ua 2013