Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP, kohana] Проблема с переменной / 7 сообщений из 7, страница 1 из 1
25.09.2014, 15:09
    #38757631
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP, kohana] Проблема с переменной
Добрый день уважаемые.
Работаю с kohana, хотел сделать переменную для контроллера (класса), которую заполнять можно было в одном методе "action_index()", а читать в другом - "action_edit()".

Код: php
1.
2.
3.
4.
5.
6.
class Controller_Admin_departmentsC extends Controller_adminC
{ private $a; 
public function action_index()
 { $this->a = 5; } 
public function action_edit() 
 { echo"a = $this->a"; } - // переменной «а» НЕ присвоилось число «5»



а как оказывается переменную (чтоб она чтоб она была доступной) можно заполнять только в " public function before() ".
Для проверки сией штуки, написал простой пример:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
class poter  //work global variable
{
    private $a;
    
    public function example1()
    {
        $this->a = 5;
        echo"example1 a = $this->a <br>------------------<br>";
    }
      
    public function example2()
    {
        echo"example2 a = $this->a <br>------------------<br>";   //переменной «а» присвоилось число «5»
    }
}
$obj_poter = new poter;
$obj_poter -> example1();
$obj_poter -> example2();
?>



Вопрос :
Почему также я не могу сделать в контроллере “class Controller_Admin_departmentsC extends Controller_adminC”

Заранее спасибо
...
Рейтинг: 0 / 0
25.09.2014, 15:59
    #38757736
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP, kohana] Проблема с переменной
Konstantin-78,

в примере последовательно вызываются exemple1 и exemple2,соответственно в первом присваиваешь во втором выводишь. А в контроллере index и edit разные действия и вызываются не одновременно. В конструктор закинь $this->a = 5; и юзай где хочешь
...
Рейтинг: 0 / 0
25.09.2014, 17:59
    #38757973
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP, kohana] Проблема с переменной
SharuPoNemnogu,

1. можно чуть-чуть по-подробнее:
вот я например в браузере открываю страничку просмотра (т.е. выполняется "public function action_index()"), переменной "а" присваивается значение, и не закрывая браузера открываю страничку редактирования - "public function action_edit()", в которой переменная "а" - уже пустая (можно конечно в debug посмотреть, когда и где она очищается), т.е. как и в примере выполняются последовательно exemple1 и exemple2, и переменная пустая, причем тут одновременно, Я ж просто запоминаю переменную?
2. А нельзя ли вместо конструктора, выражение «$this->a = 5» закинуть в «public function before()» контроллера (она также выполняется всегда).
...
Рейтинг: 0 / 0
25.09.2014, 19:00
    #38758060
alex564657498765453
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP, kohana] Проблема с переменной
Konstantin-78,

Костя, я очень уважаю тебя, но походу с головой ты не дружишь, ибо не удосужился
вдумчиво прочитать как работает кохана.

посути контроллер кохана

class controller{

public function before(){}
public function after(){}
public function action_index(){}
public function action_somedifaction(){}
....yet actions....

public function execute()
{
$this->before();
$this->$action_name();
$this->after();
}
}

и про работе Request::execute();
уже извесно имя контроллера и имя экшина
создаёться обьект нужного контроллера
и он запускаеться, его метод экзекьют. а тот просто по очереди дергает три метода
бифо, нужный экшин, афтер

потом обьект уничтожаеться.

при втором обращении на сервер, всё будет заново.

вопрос, и где твоё 5 должно сохраниться???

задача таже, как и недавно тут была - как сохранить значение между двумя обращениями
на сервер
...
Рейтинг: 0 / 0
25.09.2014, 19:15
    #38758074
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP, kohana] Проблема с переменной
alex564657498765453,

1. а можно ссылочку на работу kohana (н-р: на http://kohanaframework.org/)?
2. я так понял это название темы "как сохранить значение между двумя обращениями на сервер" на этом сайте, - ги чего не нашел
...
Рейтинг: 0 / 0
25.09.2014, 20:22
    #38758125
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP, kohana] Проблема с переменной
в php есть такой зверь как сессия, может переменную в нее забросить?
и там хранить.
в kohana даже под нее класс есть.
(Я просто этого ни когда не делал, и за kohana полгода)
и хочу рассмотреть все способы
...
Рейтинг: 0 / 0
26.09.2014, 02:01
    #38758292
Konstantin-78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP, kohana] Проблема с переменной
за предложенные пропозиции спасибо.
остановился на cookie.
Я еще с ними не работал.
Если выбор очень плох, просьба написать
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP, kohana] Проблема с переменной / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]