{% else-1 %}
Обновить | Подписаться | Поднять тему
Чтобы выполнить действие авторизируйтесь или пройдите регистрацию на сайте.
1. [автор] (26 окт 2015, 12:09) [0/0] [0] [отв] [спам] [под] +1 | -1

Кароч, использую следующее
<?

if (!empty($_COOKIE['id_user']) && !empty($_COOKIE['pass'])){


$us = $db -> q('select * from user where password = "'.$db->filtr($_COOKIE['pass']).'" and id = '.(int)$_COOKIE['id_user']);

if ($us->num_rows == 1){
$user = $us -> fetch_object();
//$db->q('update user set time_last = '.TIME.' where id = '.$user->id);

user::$user = $user;

}

}
?>
<?
class user{
static $user = false;
}
?>
Раньше при таком раскладе
if (!user::$user)exit(header('Location: /'));
Гостей кидало на главную, но сейчас какого-то йуха и юзверя кидает* в чем может,быть трабла?

2.
Hatsune Miku * [мошенник] 22.23
(27 окт 2015, 07:46) [0/0] [0] [отв] [спам] [под] +1 | -1

Всё потому, что ты дибил *

Во первых - инкапсуляция. Проще создать метод который будет возвращать свойство класса *

Во вторых - вар дамп. Что есть $user перед условием? *

И на статике далеко не уедешь *

А в третьих можна так (написал на коленке, так чисто примером): *

<?php
namespace AppVendor;

class Login extends PhalconMvcUserComponent
{
private $user = FALSE;

public function __construct ()
{
if ($this->cookies->has('id') AND $this->cookies->has('hash'))
{
$user = Users::findFirst([
'conditions' => 'id = :id: AND hash = :hash:',
'bind' => [
'id' => (int) $this->cookies->get('id')->getValue(),
'hash' => (string) $this->cookies->get('hash')->getValue()
]
]);

if ($user)
{
$this->user = (array) $user;
}
}
}

public function get ($offset)
{
return isset($this->user[$offset]) ? $this->user[$offset] : NULL;
}

public function ifLogged ()
{
return (bool) $this->user;
}
}
?>


Пример жы:

<?php
/* .... */

if ($user->ifLogged())
{
echo 'Привет ',$user->get('name');
}
else
{
return $this->response->redirect();
}
?>


Изм. 1 раз. / Посл. изм.
Hatsune Miku * [мошенник] 22.23
(27 окт 2015, 07:46)
  • 1 из 1
Чтобы писать сообщения авторизируйтесь или пройдите регистрацию на сайте.
Подписаны: 1
Скачать тему | Файлы темы | Фильтр сообщений