<?php
$bdlocation = "localhost";
$bduser = "admin";
$bdname = "test";
$bdpasswd = "123456";
$bdcnx = @mysql_connect ($bdlocation, $bduser, $bdpasswd);
if(!$bdcnx){
exit ("<p>В настоящий момент сервер базы даных не доступен, поэтому коррекное отображение страницы невозможно</p>");
}
if(! @mysql_select_db($bdname, $bdcnx))
{
exit ("<p>В настоящий момент сервер базы даных не доступен, поэтому коррекное отображение страницы невозможно</p>");
}
@mysql_query("SET NAMES 'cp1251'");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Регистрация</title>
</head>
<body>
<?php
$error = array();
if(!empty($_POST))
{
htmlspecialchars($_POST['name'], ENT_QUOTES);
htmlspecialchars($_POST['lastname'], ENT_QUOTES);
htmlspecialchars($_POST['login'], ENT_QUOTES);
htmlspecialchars($_POST['email'], ENT_QUOTES);
htmlspecialchars($_POST['password'], ENT_QUOTES);
$_POST['name'] = trim($_POST['name']);
$_POST['lastname'] = trim($_POST['lastname']);
$_POST['login'] = trim($_POST['login']);
$_POST['email'] = trim($_POST['email']);
$_POST['password'] = trim($_POST['password']);
if(empty($_POST['name'])) { $error[] = "Пожалуйста, введите Ваше имя.";}
else
{
if(!preg_match("|^[а-яa-z]{3,25}$|i", $_POST['name'])) $error[] = "Ваше Имя, было указано некорректно";
}
if(empty($_POST['lastname'])) { $error[] = "Пожалуйста, введите Вашу фамилию.";}
else
{
if(!preg_match("|^[а-яa-z]{3,25}$|i", $_POST['lastname'])) $error[] = "Ваша Фамилия, была указана некорректно";
}
if(empty($_POST['email'])) { $error[] = "Пожалуйста, введите Ваш E-mail.";}
else
{
if(!preg_match("|^[-0-9a-z_\.]+@[-0-9a-z^\.]+\.[a-z]{2,6}$|i", $_POST['email'])) $error[] = "E-mail был указан некорректно";
}
if(empty($_POST['login'])) { $error[] = "Пожалуйста, введите Ваш Логин.";}
else
{
if(!preg_match("|^[-0-9а-яa-z_\.]{3,25}$|i", $_POST['login'])) $error[] = "Ваш логин, был указан некорректно";
}
if(!preg_match("|^[-0-9а-яa-z_\.]{3,25}$|i", $_POST['password'])) { $error[] = "Пароль слишком короткий";}
if(($_POST['sex']) == 'non') { $error[] = "Пожалуйста, укажите Ваш пол.";}
if(empty($error))
{
$_POST['password'] = md5($_POST['password']);
extract ($_POST);
$query = "INSERT INTO users (name, lastname, login, password, email, sex) VALUES ('$name', '$lastname', '$login', '$password', '$email', '$sex') ";
if(!mysql_query($query)) echo "Произошла ошибка";
exit;
}
if(!empty($error))
{
foreach($error as $err)
{
echo "<span style=\"color:red\">$err</span><br>";
}
}
}
?>
<form method="post">
<table>
<tr>
<td>Имя:</td>
<td><input type='text' name='name' value="<?= htmlspecialchars($_POST['name'], ENT_QUOTES); ?>"></td>
</tr>
<tr>
<td>Фамилия:</td>
<td><input type='text' name='lastname' value="<?= htmlspecialchars($_POST['lastname'], ENT_QUOTES); ?>"></td>
</tr>
<tr>
<td>Логин:</td>
<td><input type='text' name='login' value="<?= htmlspecialchars($_POST['login'], ENT_QUOTES); ?>"></td>
</tr>
<tr>
<td>E-mail:</td>
<td><input type='text' name='email' value="<?= htmlspecialchars($_POST['email'], ENT_QUOTES); ?>"></td>
</tr>
<tr>
<td>Пароль:</td>
<td><input type='password' name='password' value="<?= htmlspecialchars($_POST['password'], ENT_QUOTES); ?>"></td>
</tr>
<tr>
<td>Пол:</td>
<td><select name="sex">
<option value="non">-Не выбран-</option>
<option value="male"> мужской </option>
<option value="female"> женский </option>
</select></td>
</tr>
</table>
<input type="submit" value="зарегистрироваться">
</form>
</body>
</html>
Нормально сделал или нет?
Спустя 5 минут, 58 секунд (17.12.2010 - 21:15) quickxyan написал(а):
)))) а где проблема? ) я перечитал весь код думал может. что увижу и тут вконце понял, что ря делал)
да вроде норм все как по мне
да вроде норм все как по мне
Спустя 8 минут, 44 секунды (17.12.2010 - 21:24) ИгорьРыжов написал(а):
))Я видео Попова смотрел.. потом на форум зашел и понял что эти видео уроки говно)))
Книжку прочитал и все сразу понятно встало))Вот сайт делаю, ща разделом регистраций занимаюсь...
Книжку прочитал и все сразу понятно встало))Вот сайт делаю, ща разделом регистраций занимаюсь...
Спустя 28 секунд (17.12.2010 - 21:24) koala написал(а):
ИгорьРыжов, выложите ваш скрипт регистрации в теге [ php ]. Код читать не очень удобно.
Спустя 7 минут, 22 секунды (17.12.2010 - 21:32) Invis1ble написал(а):
ИгорьРыжов
Цитата |
@mysql_connect |
собаки - это плохо
Цитата |
<?= |
сокращенная запись - тоже нехорошо
Это то что сразу в глаза бросается... А вообще, ты уже на форуме месяц - оформляй код нормально, если хочешь, чтоб помогли - есть кнопочка такая "php", вот ей пользуйся
Спустя 6 минут, 33 секунды (17.12.2010 - 21:38) ИгорьРыжов написал(а):
<?
Пропустил по привычки написал после Попова))
Пропустил по привычки написал после Попова))
Спустя 1 минута, 6 секунд (17.12.2010 - 21:39) ИгорьРыжов написал(а):
А в @ че плохого??
Спустя 1 минута, 39 секунд (17.12.2010 - 21:41) koala написал(а):
ИгорьРыжов, ошибок скрипта не увидите.
P.S. А что, имя только маленькими буквами вводить?
P.S. А что, имя только маленькими буквами вводить?
Спустя 4 минуты, 39 секунд (17.12.2010 - 21:46) Invis1ble написал(а):
Цитата |
А в @ че плохого?? |
потому что ты не увидишь никаких ошибок, если они вдруг возникнут, и весь скрипт сработает криво. Лучше так, например:
$bdcnx = mysql_connect ($bdlocation, $bduser, $bdpasswd) or die('Невозможно подключиться к БД');
Спустя 3 минуты, 20 секунд (17.12.2010 - 21:49) ИгорьРыжов написал(а):
над регулярными выражениями я еще работаю ))Еще систему прорабатываю ))
Хорошо ))исправлю
Хорошо ))исправлю
Спустя 7 минут, 29 секунд (17.12.2010 - 21:57) inpost написал(а):
ИгорьРыжов
Уже 34 сообщения, оформляйте PHP кодами!
Уже 34 сообщения, оформляйте PHP кодами!