- 01
 - 02
 - 03
 - 04
 - 05
 - 06
 - 07
 - 08
 - 09
 - 10
 - 11
 - 12
 - 13
 - 14
 - 15
 - 16
 - 17
 - 18
 - 19
 - 20
 - 21
 - 22
 - 23
 - 24
 - 25
 - 26
 - 27
 - 28
 - 29
 - 30
 - 31
 - 32
 - 33
 - 34
 - 35
 - 36
 - 37
 - 38
 - 39
 - 40
 - 41
 - 42
 
                        defined('HEADER') or die();
$nameChars = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
$ErrorStr = NULL;
if($cfg->login_registration != 'On' || isset($_SESSION['login']))
	return script::firbidden();
$keys = array('login', 'passw', 'passw2', 'email', 'fname', 'lname', 'code');
$post = script::apost($keys);
if(isset($_POST['submit'], $_SESSION['captcha'])) {
	$user = new user($post['login']);
	
	if(strtolower($post['code']) != $_SESSION['captcha']) {
		$ErrorStr = "Неверный код с картинки";
		unset($_SESSION['captcha']);
	} else if($user->load()) {
		$ErrorStr = "Логин уже зарегистрирован";
	} else if(!preg_match("/^[0-9A-z]{4,16}$/", $post['passw'])) {
		$ErrorStr = "Неверный пароль";
	} else if($post['passw'] != $post['passw2']) {
		$ErrorStr = "Пароли не совпадают";
	} else if(!preg_match("/^([$nameChars]{1}){2,16}$/iu", $post['fname'])) {
		$ErrorStr = "Имя введено не верно";
	} else if(!preg_match("/^([$nameChars]{1}){2,16}$/iu", $post['lname'])) {
		$ErrorStr = "Фамилия введена не верно";
	} else if(!preg_match("/^[A-z0-9\.\-\_]{3,16}\@[A-z0-9\.\-]{5,16}$/i", $post['email'])) {
		$ErrorStr = "Почтовый адрес введен неверно";
	} else {
		$user->passw = md5($post['passw']);
		$user->email = strtolower($post['email']);
		$user->fname = $post['fname'];
		$user->lname = $post['lname'];
		
		if(!$user->save())
			$ErrorStr = "Невозможно сохранить файл пользователя";
		else
			return script::redirect('h=login');
	}
}
...