Loading...
Всем добра. Что-то где-то накосячил, и теперь не могу разобраться. После создания экземпляра класса скрипт перестает работать. Пример:

<?php
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);

$User = new User();
$User->auth();

echo 'hello';


В примере hello не выведется на экран. При этом никакой ошибки на экран тоже не выводится.
Php: 5.6.23
PDO?
$User = new User();
а то гдет это я видел
[Brony] pimnik98 , ооп типа
_TURBO_ , класс тоже скинь
UPD: Где-то в классе накосячил, ибо если другой класс вызвать то все норм.
Кому не лень, посмотрите. Ибо я что-то не понимаю.

<?php
class User
{
private $authStatus;

public function __construct()
{
self::checkAuthStatus();
}

# Check user authorization status;
private function checkAuthStatus()
{
if (!empty($_SESSION['userId']) &&
!empty($_SESSION['userSession']) &&
!empty($_COOKIE['userId']))
{
if (is_numeric($_SESSION['userId']) &&
is_numeric($_COOKIE['userId']))
{
if ($_SESSION['userId'] == $_COOKIE['userId'])
{
$check = DB::$dbs->querySingle("SELECT COUNT(`id`) FROM ". USERS ." WHERE `id` = ?", [$_SESSION['userId']]);

if (!empty($check))
{
$profile = DB::$dbs->queryFetch("SELECT `userSession` FROM ". USERS ." WHERE `id` = ?", [$_SESSION['userId']]);

if ($_SESSION['userSession'] == $profile['userSession'])
{
$this->authStatus = 1;
exit();
}
else
{
$this->authStatus = 0;
self::unsetUser();
exit();
}
}
else
{
$this->authStatus = 0;
self::unsetUser();
exit();
}
}
else
{
$this->authStatus = 0;
self::unsetUser();
exit();
}
}
else
{
$this->authStatus = 0;
self::unsetUser();
exit();
}
}
else
{
$this->authStatus = 0;
exit();
}
}

# Unset all user data;
public function unsetUser()
{
if (!empty($_SESSION['userId']))
{
unset($_SESSION['userId']);
}

if (!empty($_SESSION['userSession']))
{
unset($_SESSION['userSession']);
}

if (!empty($_COOKIE['userId']))
{
setcookie("userId", "", $_SERVER['REQUEST_TIME'] - 60, "/");
}
}

# Check user authorization for access to page;
# $code => 0 only for not auth. => 1 only for auth;
public function auth($code = null)
{
if (empty($code))
{
if (!empty($this->authStatus))
{
header("Location: ". HOME ."/game.main");
exit();
}
else
{
return false;
}
}
else if (!empty($code))
{
if (empty($this->authStatus))
{
header("Location: ". HOME ."/game.index");
exit();
}
else
{
return false;
}
}
}
}
Блин... Надо больше спать. Про exit забыл.
Онлайн: 3
Время:
Gen. 0.0959
(c) Bym.Guru 2010-2026