|
|
|
|
if(isSet($_POST['register']))
{
@$login = $_POST['login'];
@$password = $_POST['password'];
@$email = $_POST['email'];
@$town = $_POST['town'];
@$ip = $_SERVER['REMOTE_ADDR'];
@$psp_firm = $_POST['psp_firm'];
@$phone = $_POST['phone'];
@$kpk = $_POST['kpk'];
@$icq = $_POST['icq'];
@$full_name = $_POST['full_name'];
$date = date("Y-m-d");
if (empty($login)) msgbox("введите логин");
if (empty($password)) msgbox("введите пароль");
if (empty($email)) msgbox("введите ваше Е-Мыло");
if (preg_match("/^[a-zA-Zа-яА-Я0-9]$/i",$login)) msgbox("в логине есть запрещенные символы");
if (preg_match("/^[a-zA-Zа-яА-Я0-9]$/i",$password)) msgbox("в пароле есть запрещенные символы");
if (preg_match("/^[a-zA-Z0-9]+@[a-zA-Z0-9.]+[a-zA-Z]{2-3}$/i",$email)) msgbox("неправильно заполнено поле \"E-Mail\"");
if (preg_match("/^[a-zA-Zа-яА-Я0-9]$/i",$town)) msgbox("неправильно заполнено поле \"откуда\"");
if (preg_match("/^[a-zA-Zа-яА-Я0-9]$/i",$psp_firm)) msgbox("неправильно заполнено поле \"прошивка PSP\"");
if (preg_match("/^[a-zA-Zа-яА-Я0-9]$/i",$phone)) msgbox("неправильно заполнено поле \"телефон\"");
if (preg_match("/^[a-zA-Zа-яА-Я0-9]$/i",$kpk)) msgbox("неправильно заполнено поле \"КПК\"");
if (preg_match("/^[0-9]$/i",$icq)) msgbox("неправильно заполнено поле \"ICQ\"");
if (preg_match("/^[a-zA-Zа-яА-Я]$/i",$full_name)) msgbox("неправильно заполнено поле \"реальное имя\"");
// создаем запрос к БД
$query = "INSERT INTO users (id, login, password, last_date, reg_date, email, town, ip, psp_firm, phone, kpk, icq, full_name)
VALUES (
'', '".$login."', '".$password."', ".$date.", '".$date."', '".$email."', '".$town."', '".$ip."', '".$psp_firm."', '".$phone."', '".$kpk."', '".$icq."', '".$full_name."'
);";
$mysql->connect("root", "", "cms");
if($mysql->query($query))
{
msgbox("".$login.", спасибо за регистрацию! Вы можете авторизоваться, используя свой логин и пароль.");
}
else msgbox("Ошибка при регистрации!");
}
|
при выполнении кода сразу выполняется запрос в БД, в фильтрация регулярными выражениями не работает. почему? | |
|
|
|
|
|
|
|
для: R@zoR
(06.08.2007 в 17:29)
| | Потому что тут все в кучу собрано. Надо сделать условие при котором добавляется инфа в базу данных или нет а то у вас он напишет что например что неправильный логин а потом добавит эту инфу в бд какой смысл тогда проверять с помощью preg_match? | |
|
|
|
|
|
|
|
для: R@zoR
(06.08.2007 в 17:29)
| | $messerror[1] = "введите логин";
$messerror[2] = "введите пароль";
....
if (empty($login)) $err = 1;
if (empty($password)) $err=2;
....
if ($err)
msgbox($messerror[$err]);
else {
// создаем запрос к БД
if($mysql->query($query)) {
msgbox("".$login.", спасибо за регистрацию!");
}
} | |
|
|
|
|
|
|
|
для: ise-dvp
(06.08.2007 в 17:39)
| | Спасибо! | |
|
|
|