|
|
|
| У меня есть форма в которую юхверь вводит данные, и есть база в которой уже есть некоторые данные, мне нужно сверить введённую информацию юзверя с информацией в базе данных относительно ника введённого пользователем..... чёт я замудрил.. прощу говоря нужно авторизацию сделать!:)) нуна пароль вытащиь из базы и сравнить с тем который ввёл юзверь, если получилось то вернуть его на главную страницу уже авторизованного! :)
а то на файлах то я это делал а с БД работаю всего дня 4... | |
|
|
|
|
|
|
|
|
для: cheops
(13.10.2005 в 13:09)
| | да спасибо, думаю - это то что надо! | |
|
|
|
|
|
|
|
для: 10100100
(13.10.2005 в 09:19)
| | Я это делаю следующим образом.
Имеется файл с формой для авторизации, например index.php
Таблица, в которой хранятся ники и пароли, называется, например users
Сведения об авторизации юзера храним в переменной сессии $_SESSION['user']. Ее потом можно использовать в остальных сценариях для проверки, авторизован ли юзер
<html>
<body>
<form name="reg" action="index.php" method="post">
Ник
<input type="text" name="nick" maxlength="15" size="15">
Пароль
<input type="password" name="pwd" maxlength="15" size="15">
</form>
<a href="javascript:document.forms.reg.submit();">Вход</a><br/>
<a href="logout.php">Выход</a>
<?php
// в файле db_open.php у меня сценарий для подключения к серверу mysql и выбор необходимой бд
include ("db_open.php");
session_start(); // начинаем сессию
// здесь регаем посетителя или выводим сообщения об ошибках, если рег некорректный
// затем устанавливаем переменные сессии
if (isset($_POST['nick']) && isset($_POST['pwd']))
{
$nick = trim($_POST['nick']);
$pwd = trim($_POST['pwd']);
$err = 'Ник <b>'.$nick.'</b> не зарегистрирован<br/>Попробуйте еще раз или зарегистрируйтесь';
if (!$nick || !$pwd) $err = 'Необходимо ввести ник и пароль<br/>Попробуйте еще раз';
else
{
$query = 'select nick, pwd from users where nick="'.$nick.'"';
$res = mysql_fetch_array(mysql_query($query));
$db_nick = $res['nick']; $db_pwd = $res['pwd'];
if (($db_nick == $nick) && ($db_pwd == $pwd)) $_SESSION['user'] = $nick;
if (($db_nick == $nick) && ($db_pwd != $pwd)) $err = 'Неверный пароль<br/>Попробуйте еще раз';
}
}
// Далее выводим приветствия или сообщения об ошибке авторизации
if (isset($_SESSION['user'])) echo 'Доброе время суток, '.$_SESSION['user'];
elseif (isset($err)) echo $err;
else echo 'Доброе время суток, Посетитель';
// далее сценарий, если необходимо
?>
</body>
</html>
|
И имеем файл logout.php для "деавторизации" юзера
<?php
session_start();
unset($_SESSION['user']);
session_destroy();
header ("location: index.php");
?>
|
| |
|
|
|
|
|
|
|
для: WebTech
(13.10.2005 в 13:11)
| | хм.. интересный вариант.. спасибо! | |
|
|
|