Консультация № 142325
26.08.2008, 17:44
0.00 руб.
0 1 0
Здравствуйте!
Приведенный ниже код- регистрация-авторизация пользователей.
как сделать,чтобы после авторизации страница продолжала загружаться и тем не менее пользователю все равно было сообщение об успешной авторизации?

Приложение:
<?
Error_Reporting(E_ALL & ~E_NOTICE);
session_start();
if (!isset($reg)) {
include ("register.php"); }
else {
echo $name; }
?>
код register.php
<?php
if ( isset ($name) AND isset ($password) ){
$data = File ("users.db");
$pass = md5 ($password);

for ($i=0;$i<count($data);$i++) {
$dat = explode (";", $data[$i]);
if ($name == $dat[0] && $pass."\r\n" == $dat[1])
{
session_register(name);

session_register(password);
echo "<b><center><h2>Вы удачно авторизованы $name</h2></center></b><a href="/?reg">Можете войти на сайт</a>";
exit;
}
}

$data = File ("users.db");
for ($i=0;$i<count($data);$i++) {
$dat = explode (";", $data[$i]);
if ($name == $dat[0])
{
echo "
<b>Такой пользователь уже есть !<br/>Попробуйте придумать другой логин</b><a href="/">и заполните форму</a>";
exit;
}
}
$pass = md5 ($password);
$fp = fopen ("users.db", "a");
flock ( $fp, 1);
fputs ($fp, $name.";".$pass."\r\n");
flock ($fp, 3);
fclose ($fp);
echo $name;
echo "
<b><center><h2>Спасибо за регистрацию!</h2></center></b>";
session_register(name);

session_register(password);
} else {
echo "Гость
";
echo "Зарегестрируйтесь или пройдите авторизацию.";
echo "<form action='/' method=post>
<table>
<tr>
Login: <input type=text size=15 name=name></tr>

<tr>
Password: <input type=password size=15 name=password></tr>

</table>
<p><input type=submit value=Нажать>
</form>"; }
?>

Обсуждение

Неизвестный
26.08.2008, 17:51
общий
Уберите вызовы exit() - скрипт будет продолжать работать. Только предусмотрите различные ветки кода для авторизованных и анонимов.
Форма ответа