Итак, у нас есть форма с некоторыми полями. Есть пользователь, у которого отключен JS. Форму нужно проверить, в случае если что-то не так - не заливать в базу а вернуть ту же самую форму с теми же значениями, которые ввел пользователь и как-то отметить проблемные поля. Как это обычно делается? На ум приходит что-то типа: if(empty($_POST['title'])) $errors[] = ('title', 'пустое значение'); .... if(!errors) //заливаем в базу else //возвращаем страницу и как-то отмечаем проблемные поля Но хочется правильный алгоримт и/или пример, кусок кода
PHP: else { //проверяем, какие передались, например if (isset($_POST['var1'])) {$var1 = $_POST['var1'];} ... echo "<form action=\"$_SERVER['PHP_SELF']\" method=\"POST\"> <input type=\"text\" name=\"var1\" value=\"$var1\">" } можно так сделать, так вернутся заполненные поля
PHP: <?php $errors['title'] = 'пустое значение'; PHP: <?php print isset($errors['title']) ? $errors['title'] : '';?>
у меня обработчики форм висят на другом файле (recive.php). Есть шаблонизатор. Для редактирования чего-либо используются другие шаблоны, не такие, как для добавления чего-либо (tpl/add-manufacturer.htm, tpl/edit-manufacturer.htm) нужно объединять в один!!!!11 Шаблон будет примерно такой: <form ...> поле1:<br> [:error:] <input name="name1" value="[:value1:]"> ... </form> В php-файле будем просто устанавливать значения переменных, или не устанавливать-> они будут игнорироваться. Ну и все-таки массив ошибок потребуется скорее всего. В общем примерные идеи реализации наметил, буду воплощать в жизнь. Теперь вопрос в другом: а если яваскрипт будет включен, сабмит через аякс. Что должен возвращать аякс-запрос: json/html/js ? Склоняюсь к html-у, который будет повторять шаблон и который буду загонять в слой