class DarkRaha extends com { // разработка приложений
            String a="Главная" b="Контакты" c="О сайте"
};

PHP

для CGI

переменные окружения
шаблон сайта
кэширование страниц
HTTP заголовок
пользователи сайта
загрузка файлов
загрузка файлов в БД

БД

PHP+MySql,PHP+PostgreSql

PHP API

Справочник по PHP CGI

Пользователи сайта

Ниже приведен файл logindemo.php c демонстрацией основных операций с уже зарегистрированными пользователями. Тип операции передается в файл методом get:

В конце этого файла ссылка на тестовую страницу ldemo1.php. Если пользователь вошел как зарегистрированный член сайта, то ему отобразится сообщение. В противном случае, он будет перенаправлен обратно на logindemo.php. Также на тестовой странице есть ссылка для выхода пользователя.


<?php
//logindemo.php
session_start(); 
  
//===============================================
// для всех случаев кроме логина отобразим форму
if($_GET["op"]!="login"){ ?>
<form method="POST" action="?op=login">
Username: <input type="text" name="uname" size="20"/><br/>
Password: <input type="password" name="psw" size="20"/><br/>
<input type="submit" value="submit" name="submit"/>
</form> 
<?php } 

//===============================================
if($_GET["op"]=="demo"){
echo "зарегистрированный пользователь вошел";
} 

//===============================================
if($_GET["op"]=="logout"){
unset($_SESSION['reguser']);
echo "пользователь вышел";
}

//===============================================
if($_GET["op"]=="nouser"){
   echo "пользователь с таким паролем не найден.";
}

//================================================ 
if($_GET["op"]=="login"){

// подсоединяемся
mysql_connect('localhost', 'root', 'root1') or
    die ("error on connection");
mysql_select_db('test');

// для краткости
$u=$_POST['uname'];
$p=$_POST['psw'];

$r=mysql_query(
"select * from users where uname='{$u}' AND psw='{$p}'"
); 

if(mysql_num_rows($r)==1){
    $_SESSION["reguser"]=$_POST['uname'];
    header("Location: ?op=demo");
    exit;
}
else {
   header("Location: ?op=nouser");
   exit();
} 

}
?>
<br/><br/><a href="ldemo1.php">ссылка для проверки</a>

<?php
// ldemo1.php
session_start();

if (!$_SESSION["reguser"]) {
// пересылаем обратно на страницу входа
Header("Location: logindemo.php");
}
?>
Это строчку видят только за регистрированные
пользователи.<br/>
<a href="logindemo.php?op=logout">выйти</a>

Регистрация пользователя проста, по данным формы нужно добавить запись в таблицу. При этом пароль можно сохранять как результат функции md5(). В этом случае не забудьте преобразовывать пароль этой функцией при входе пользователя.

В данном примере использовался массив $_SESSION. Вы можете переделать его с использованием функций для работы с сессиями. То есть при успешном входе зарегистрировать переменную сессии. А в тестовой странице проверять наличие регистрации это переменной. Выход из сессии может выглядеть следующим образом:


<?php
session_start();
session_unset();
session_destroy();
// возвращаемся на какую-нибудь страницу
header(" Location: logindemo.php");
?>

Рейтинг@Mail.ru