$name, "pass" => $pass, "pass_again" => $pass_again, "email" => $email, "about" => $about), "Добавить", "field"); ///////////////////////////////////////////// // 2. Обработка HTML- формы ///////////////////////////////////////////// if(!empty($_POST)) { // Устанавливаем соединение с базой данных require_once("config/config.php"); // Проверяем корректность заполнения HTML- формы // и обрабатываем текстовые поля $error = $form->check(); // Проверяем идентичность паролей if($form->fields['pass']->value != $form->fields['pass_again']->value) { $error[] = "Пароли не равны"; } // Проверяем, не регистрировался ли ранее пользователь // с идентичным электронным адрессом $query = "SELECT COUNT(*) FROM users WHERE email = '{$form->fields[email]->value}'"; $mal = mysql_query($query); if(!mal) { throw new ExceptionMySQL(mysql_error(), $query, "Ошибка регистрации пользователя"); } if (mysql_result($mal, 0)) { $error[] = "Пользователь с электронным адресом {$form->fields[email]->value} уже зарегистрирован"; } if(empty($error)) { // Записываем полученные результаты в таблицу $query = "INSERT INTO users VALUES (NULL, '{$form->fields[name]->value}', MD5('{$form->fields[pass]->value}'), '{$form->fields[email]->value}', '{$form->fields[description]->value}', NOW())"; if(!mysql_query($query)) { throw new ExceptionMySQL(mysql_error(), $query, "Ошибка регистрации пользователя"); } //Перегружаем страницу для сброса POST- данных header("Location: $_SERVER[PHP_SELF]"); exit(); } } /////////////////////////////////////////////////////// // 3. Видимая часть страницы /////////////////////////////////////////////////////// // Включаем заголовок страницы // require_once("utils/top.php"); // Выводим сообщения об ошибках, если они имеются if(!empty($error)) { foreach($error as $err) { echo "$err
"; } } // Выводим HTML_ форму $form->print_form(); } // Перехватываем исключение, если производится // попытка передать классу form некорректный // элемент управления catch(ExceptionObject $exc) { require("exception_object.php");} // Перехватываем исключение, если выполняется // обращение к несуществующему элементу управления catch(ExceptionMember $exc) { require("exception_member.php");} // Обрабатываем исключение, возникшие // при обращении к СУБД MySQL catch(ExceptionMySQL $exc) { require("exception_mysql.php");} // Включаем завершение страницы // require_once("utils/bottom.php"); ?>