12.05.2012 / 20:09 | |
web_demon Супервизор Сейчас: Offline
Регистрация: 11.01.2010
| Dinisimys1, я просто не понимаю зачем все это запихивать в функцию. Это же форма входа, ее один раз на сайте показывать нужно и все.
|
12.05.2012 / 22:00 | |
Dinisimys1 Пользователь Сейчас: Offline
Имя: Денис Регистрация: 23.01.2011
| Как в строке поменять последнюю букву на "и"?
Изменено Dinisimys1 (12.05 / 22:01) (всего 1 раз) |
12.05.2012 / 23:03 | |
qwertyuiop Супермодератор Сейчас: Offline
Имя: Василиус Откуда: RZN Регистрация: 20.04.2012
| Имеются три файла: 1) tmp.php 2) str1.php 3) str2.php
Данные авторизации проверяются в login.php.
Далее эти данные записываются в tmp.php. В str1.php импортируется файл tmp.php, затем в str2.php импорт. str1.php.
Вопрос: авторизованный пользователь сможет перейти на хттп://сайт.рф/str2.php ?? (эти файлы скрыты от незареганных)
__________________
わからない!! Изменено qwertyuiop (12.05 / 23:06) (всего 2 раза) |
12.05.2012 / 23:10 | |
Dinisimys1 Пользователь Сейчас: Offline
Имя: Денис Регистрация: 23.01.2011
| <?php
$reg=$auto_user=$error=$db_error="";
ConnectDB($db_error);
function User ($auto_user)
{
if (!empty($_COOKIE['login']) && !empty($_COOKIE['login']))
{
$login=$_COOKIE['login'];
$password=$_COOKIE['password'];
if (mysql_query("SELECT * FROM `user` WHERE `login` = '$login' AND `password` = '$password'")) return "yes";
else return "no";
}
else return "no";
}
if (User($auto_user) == "yes")
{
haeder("Location: /");
exit;
}
elseif (!empty($_POST['submit']))
{
$login=$_POST['login'];
$password=$_POST['password'];
$email=$_POST['email'];
$error.=Valid($login,"логін","login") . Valid($password,"парол","password") . ValidEmail($email);
if ($error) $reg="";
else
{
$password=md5($password);
$q=mysql_query("INSERT INTO `user` SET `login`='$login', `password`='$password', `email`='$email'");
mysql_close($db_error);
$reg="yes";
}
}
echo '<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Реєстрація</title>
<link rel="stylesheet" href="../style/style.css" type="text/css" />
</head>
<body>
<table>
<tr><td><img src="../logo.jpg" alt="logo"></td><td></td></tr>
<tr><td colspan=2><font class="menu">Реєстрація</font><a href="nojs.php" class="menu" id="button">Назад</a></td></tr>
<tr><td><div class="error">' . ConnectDB($db_error) . $error . '</div>';
if ($reg)
{
echo 'Дякуємо за успішну реєстрацію.<br />
Логін:' . $login . '<br />
Пароль' . $password . '<br />
E-mail' . $email . '<br />
<a href="enter.php">Авторизуйтесь</a>';
}
else
{
echo '<form method="post" action="reg.php" />
Логін: <input type="text" name="login" value="" /><br /><br />
Пароль: <input type="text" name="password" value="" /><br /><br />
E-mail: <input type="text" name="email" value="" /><br /><br />
<input type="hidden" name="submit" value="yes" />
<input type="submit" value="Реєстрація" />
</form>
<script>
document.getElementById(\'button\').onclick = function()
{
history.back();
return false;
}
</script>';
}
echo '</table></body></html>';
function Valid($error,$param,$name)
{
if (!$error) return $error.='Запоніть обов\'язково поле ' . $param . '<br />';
else
{
if (mysql_query("SELECT * FROM `user` WHERE `$name` = '$error'"))
{
return $error.='Данний ';
if ($param == "парол") return $error.=$param . 'ь уже використовується.<br />';
else return $error.=$param . ' уже використовується.<br />';
}
else
{
if (preg_match("/[\W]/", $error)) return $error.='В ' . $param. 'i допускаються тільки символи a-z, A-Z, 0-9, _<br />';
if (5 > strlen($error) && strlen($error)< 28) return $error.='В ' . $param . 'i повинно бути не менше 5 та не більше 28 символів<br />';
}
}
}
function ValidEmail($error)
{
if (!$error) return $error.='Запоніть обов\'язково поле e-mail.<br />';
else
{
if (mysql_query("SELECT * FROM `user` WHERE `email` = '$error'")) return $error.='Данний e-mail уже використовується.<br />';
else
{
if (5 > strlen($error) && strlen($error)< 28) return $error.='В e-mail\'i повинно бути не менше 5 та не більше 28 символів<br />';
if (!preg_match("/^[-_a-zA-Z0-9]+@[-a-zA-Z0-9]+.[-a-zA-Z0-9]+$/", $error)) return $error.='E-mail має невірний формат.';
}
}
}
function ConnectDB($db_error)
{
$db_host='openserver';
$db_database='ukrnet';
$db_user='root';
$db_pass='';
$db_error= mysql_connect($db_host, $db_user, $db_pass);
if (!$db_error) return $db_error='Помилка підкулючення до бази данних. Код:' . mysql_error() . '<br />';
if (!mysql_select_db($db_database)) return $db_error.='Помилка вибору бази данних. Код:' . mysql_error() . '<br />';
}
?>
Не работает диз, а также даже после успешного ввода данных выводит DenisДанний passwordddДанний [email protected]Данний e-mail уже використовується.ну и опять форму |
12.05.2012 / 23:14 | |
Dinisimys1 Пользователь Сейчас: Offline
Имя: Денис Регистрация: 23.01.2011
| qwertyuiop, мне кажеться лучше сделать в отдельном файле функцией зделать проверку пользователя и подключать ко всем другим файлам, а в них проверять возвращеное значение ф-и, если гость, то заголовком перенаправлять на главную,
|
12.05.2012 / 23:17 | |
Dinisimys1 Пользователь Сейчас: Offline
Имя: Денис Регистрация: 23.01.2011
| qwertyuiop, по сути, так как ты написал, то неавторизованй сможет зайти на все файлы, так как проверка только в логин.пхп. Делай, как тут говорил Пост #163313 |
13.05.2012 / 20:58 | |
qwertyuiop Супермодератор Сейчас: Offline
Имя: Василиус Откуда: RZN Регистрация: 20.04.2012
| Dinisimys1, не зареганный не зайдет, его и так перекинет на главную. вопрос внимательно перечитай, да и сам пост __________________
わからない!! |
14.05.2012 / 21:08 | |
Dinisimys1 Пользователь Сейчас: Offline
Имя: Денис Регистрация: 23.01.2011
| Правильно ли это? mysql_query("SELECT * FROM `user` WHERE `login` = '$error'")
|
15.05.2012 / 10:50 | |
TAPAHbl4 Пользователь Сейчас: Offline
Имя: TAPAHbl4 Регистрация: 15.01.2012
| Dinisimys1, смотря что ты этим добиться хочешь. В синтаксисе вроде ошибок нету
|
15.05.2012 / 20:34 | |
Dinisimys1 Пользователь Сейчас: Offline
Имя: Денис Регистрация: 23.01.2011
| А можно ли как-то посмотреть код чужого скрипта?
|