Показать сообщение отдельно

  #9  
Старый 31.07.2009, 20:44
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


По умолчанию

Pashkela
PHP код:
if (getenv("HTTP_REFERER")!='http://site.ru/index.php') exit; 
Потделать реферер непроблема, сам знаеш:
CURLOPT_REFERER

index.php
PHP код:
<?php
session_start
();
$login 'admin';
$pass '123';

function 
Form()
{
    echo 
'<table border="1" align="center">
<form method="post" enctype="application/x-www-form-urlencoded" action='
.$_SERVER['PHP_SELF'].'>
<tr>
    <td colspan="2">Авторизация</td>
    
</tr>
<tr>
    <td>Логин</td>
    <td><input type="text" size="20" maxlength="20" name="login"></td>
</tr>
<tr>
    <td>Пароль</td>
    <td><input type="password" size="20" maxlength="20" name="pass"></td>
</tr>
<tr>
    <td colspan="2"><input type="submit" value="login"></td>

</tr>
</form>
</table>
    '
;
}
if(empty(
$_POST['login']) || empty($_POST['pass']))
{
Form();
exit;
}
if(
$_POST['login'] === $login && $_POST['pass'] === $pass)
{
    
$_SESSION['login'] = 'yes';
header('Location: yes.php');
    echo 
'Вы авторизованы, перейдите по ссылке: <a href="yes.php">ССЫЛКО</a>';
    
    exit;
    
} else {
    
    echo 
'<center><font color="red">Пароль неверный</font></center>';
    
Form();
    
$_SESSION['login'] = 'no';    
    exit;
}
?>
yes.php
PHP код:
<?php
session_start
();
if(!isset(
$_SESSION['login']) || $_SESSION['login'] == 'no')
    {
        
header('Location: index.php');
        exit;
    }

?>

а тут всякая хрень которую видно только если авторизация успешна

Писал быстро поетому мог гдето что-то упустить, но вроде не упустил. Обязательное условие register_globals=off;
При правильной авторизации перенаправление на yes.php, при неправильно снова покажет форму.

Последний раз редактировалось b3; 01.08.2009 в 12:11..
 
Ответить с цитированием