cakephp: мой домен на общем хостинге justhost не отображает флэш-сообщения

В моем домене на общем хосте не отображаются флеш-сообщения. Он отлично отображается на моем локальном сервере. У меня есть следующее в student_controller:

function add(){

$this->Session->setFlash('Your child\'s admission has been received. We will send you an email shortly.'); 
}

У меня есть следующее в default.ctp(файл макета) и add.ctp:

echo $this->Session->flash();

папка /app/tmp и все папки в ней имеют разрешение 777.

Я также поставил debug($this->Session->read()); в student_controller и дает:

Array
(
    [_Token] => a:5:{s:3:"key";s:40:"39a5e70df521f8f175d20060abb261b69611f0a1";s:7:"expires";i:1327392309;s:18:"allowedControllers";a:0:{}s:14:"allowedActions";a:0:{}s:14:"disabledFields";a:0:{}}
    [Message] => Array
        (

        [flash] => Array
            (
                [message] => Your child's admission has been received. We will send you an email shortly.
                [element] => default
                [params] => Array
                    (
                    )

            )

    )

)

В app_controller.php:

var $helpers = array('Html','Form','Ajax','Javascript','Session');
var $components=array('Auth','Session','Cookie');

В core.php я пробовал установить: Configure::write('debug', 0); вместо Configure::write('debug', 2); Configure::write('Session.save', 'торт'); вместо Configure::write('Session.save', 'php');

У меня нет пробелов ни после, ни перед в route.php.

Кто-нибудь может мне помочь? Какую ошибку я делаю?


person vaanipala    schedule 24.01.2012    source источник


Ответы (2)


Если я попробую код abe, я получу ошибку, что переменная $session не определена. Разве вызов check() не должен быть:

$this->Session->check()

Я не уверен, что вам даже нужен check(), хотя $this->Session->flash() ничего не напечатает, пока не будет заполнен требуемый ключ сеанса.

person mensch    schedule 24.01.2012
comment
Хорошо, я удалил check(). Но это все еще не работает. $this-›Session-›read() по-прежнему выдает [сообщение] «Допущение вашего ребенка получено….». Вот почему я не понимаю, почему $this-›Session-›flash() не отображает сообщение. - person vaanipala; 25.01.2012
comment
Это довольно странно. Когда я копирую ваш код в один из моих проектов, все работает нормально. Теоретически все, что вы разместили в своем вопросе, теперь должно работать. Поскольку ваш параметр debug установлен на 2, кэширование не должно иметь значения, но не могли бы вы очистить каталоги models и persistent в /tmp/cache? - person mensch; 25.01.2012
comment
я удалил содержимое моделей и сохранял в /tmp/cache. Но до сих пор нет флэш-сообщения. Данные вставляются в базу данных, но только без флэш-сообщения. Я не знаю, что не так. - person vaanipala; 26.01.2012
comment
Хорошо, флеш-сообщения теперь отображаются. Проблема была с test.php в webroot. Я внес те же изменения, что и в index.php, в test.php, и теперь он работает. - person vaanipala; 27.01.2012

Я не уверен, что это поможет, но вот ссылка на их базу знаний: https://my.fastdomain.com/cgi/help/107

person Numberonbestsupertech    schedule 24.01.2012
comment
ссылка, которую вы дали, предназначена для флэш-файлов swf. Мой вопрос касается флэш-сообщений сеанса в cakephp. - person vaanipala; 25.01.2012