示例#1
0
 public function loginCheck($num, $password)
 {
     $userdb = new UserDB();
     $u = $userdb->login($num, $password);
     if ($u) {
         $d = array("id" => $u[0], "num" => $u[1], "username" => $u[2]);
         return $d;
     } else {
         return false;
     }
 }
示例#2
0
		<link type="text/css" rel="stylesheet" href="css/style.css">
	    <script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
	    <script type="text/javascript" src="js/jquery-migrate-1.2.1.min.js"></script>
	    <script type="text/javascript" src="js/javascript.js"></script>
		<meta charset="UTF-8">
		<meta charset="UTF-8">
		<title>Log in</title>
	</head>
		<body>
			<div class="flex-container">
				<?php 
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    ?>
					<?php 
    $user = new UserDB();
    $errors = $user->login($_POST);
    ?>
					<?php 
    if (count($errors) == 0) {
        ?>
	                    <?php 
        header("Location: index.php");
        exit;
        ?>
	               	<?php 
    }
    ?>
	            <?php 
}
?>
	            <h1>Влизане</h1>
 public static function authUser($login = false, $password = false)
 {
     if ($login) {
         $auth = true;
     } else {
         if (!session_id()) {
             session_start();
         }
         if (!empty($_SESSION["auth_login"]) && !empty($_SESSION["auth_password"])) {
             $login = $_SESSION["auth_login"];
             $password = $_SESSION["auth_password"];
         } else {
             return;
         }
         $auth = false;
     }
     $user = new UserDB();
     if ($auth) {
         $password = self::hash($password, Config::SECRET);
     }
     $select = new Select();
     $select->from(self::$table, array("COUNT(id)"))->where("`login` = " . self::$db->getSQ(), array($login))->where("`password` = " . self::$db->getSQ(), array($password));
     $count = self::$db->selectCell($select);
     if ($count) {
         $user->loadOnLogin($login);
         if ($user->activation != "") {
             throw new Exception("ERROR_ACTIVATE_USER");
         }
         if ($auth) {
             $user->login();
         }
         return $user;
     }
     if ($auth) {
         throw new Exception("ERROR_AUTH_USER");
     }
 }
示例#4
0
 public static function authUser($login = false, $password = false)
 {
     if ($login) {
         $auth = true;
     } else {
         //значит проверка данных в сесии
         if (!session_id()) {
             session_start();
         }
         //стартуем сесию
         if (!empty($_SESSION["auth_login"]) && !empty($_SESSION["auth_password"])) {
             //если логин и пароль не пустые
             $login = $_SESSION["auth_login"];
             //то данные берутся из сесии
             $password = $_SESSION["auth_password"];
         } else {
             return;
         }
         //если не авторизация и данные не из сесии значит вазвращаемся
         $auth = false;
         //а авторизация false
     }
     $user = new UserDB();
     if ($auth) {
         $password = self::hash($password, Config::SECRET);
     }
     //если авторизация переданный пароль хэшеруем
     $select = new Select();
     //ищем пользователя отвечаютщего запросу (соответствие логина пароля)
     $select->from(self::$table, array("COUNT(id)"))->where("`login` = " . self::$db->getSQ(), array($login))->where("`password` = " . self::$db->getSQ(), array($password));
     $count = self::$db->selectCell($select);
     //ищем количество соответствующих (логину паролю)пользователей
     if ($count) {
         $user->loadOnLogin($login);
         //загружаем пользователя
         if ($user->activation != "") {
             throw new Exception("ERROR_ACTIVATE_USER");
         }
         //если пользователь не активированн выводим ошибку
         if ($auth) {
             $user->login();
         }
         //если авторизация делаем логин
         return $user;
         //возвращаем юзера
     }
     if ($auth) {
         throw new Exception("ERROR_AUTH_USER");
     }
     //возвращаем ошибку если не был найден пользователем с таким логином и паролем
 }