2016-09-05 6 views
0

ビューからFat FreeフレームワークでSESSION変数を設定しようとしています。今テンプレートからFat Freeフレームワーク変数を設定しました

私のコードは次のとおりです。 <set SESSION.regex_save_successful="false" />

動作しません、これは <set SESSION.regex_save_successful=false />

どちらもこのませいずれかの動作しないこと:誰もが私を助けることができる場合 <set @SESSION.regex_save_successful=(")false(") />

を正しい方向に私はそれを感謝します。

多分私の問題にいくつかの他の解決策があります:ビューがロードされ、<check>が実行されるときに変数をリセットしたいと思います。これで、最初の再ルーティング後に次のように表示されます。成功しました。その後、すべてのリロードの後に​​空白にする必要があります。

答えて

1

テンプレートエンジンは、テンプレートをレンダリングする前に変数を新しい環境(「サンドボックス」)にコピーします。その結果、あなたのコードは、SESSION変数の代わりにコピーを変更するだけです。これは、セッション管理を担当する変数$_SESSION変数にマップされます。

それはテンプレートがセッション情報を変更できるように悪い決断ですが、ここでは可能な解決策である:

{~ Base::instance()->set('SESSION.regex_save_successful', false); ~} 
+0

あなたが私の問題のためにお勧めしますか?一度表示するだけです。それが再び保存しないときは、それを表示しないでください。 – anned20

+1

コントローラがセッションを変更し、メッセージを表示または非表示にする変数を追加させます。この方法は、予期しない副作用からテンプレートをきれいに保ちます。 – Rayne

関連する問題