<?php
#Файл защиты и авторизации пользователя
#Вводите логин и пароль,и сверяете. Для баз данных не подходит,там есть свои методы;)
class autorization
{
public $login;
public $passw;
public function __construct($login,$passw)
{
$this->login=$login;
$this->passw=$passw;
$this->add_to_session();
$this->check();
}
#Если есть параметры авторизации,то запишем их в сессию
private function add_to_session()
{
if(isset($_REQUEST['login']) && isset($_REQUEST['passw']))
{
$_SESSION['login']=$this->pro($_REQUEST['login']);
$_SESSION['passw']=md5($_REQUEST['passw']);
$_SESSION['ua']=$this->pro($_SERVER['HTTP_USER_AGENT']);
$explode=explode('.',$_SERVER['REMOTE_ADDR']);
$_SESSION['ip']=$explode[0].$explode[1];
}
}
#Проверка данных
private function check()
{
$explode=explode('.',$_SERVER['REMOTE_ADDR']);
if(@$_SESSION['ip']==$explode[0].$explode[1] && @$_SESSION['login']==$this->pro($this->login) && @$_SESSION['passw']==$this->passw && @$_SESSION['ua']==$this->pro($_SERVER['HTTP_USER_AGENT']))
define('AUT',TRUE);
else define ('AUT',FALSE);
}
#Функция фильтра
public function pro($text)
{
$text=trim(htmlentities($text,ENT_QUOTES,'UTF-8'));
$text=iconv_substr($text,0,32,'UTF-8');
return $text;
}
}
?>