ページ: << 1 ... 5 6 7 8 9 10 11 12 13 14 15 ... 19 >>
CakePHP1.2 RC2
リファラーを取得するには、これで出来ます。
参考:RequestHandlerコンポーネントのgetReferrerについて[CakePHP] YARETOKO「ヤレトコ」メインブログ
CakePHP1.2 RC2
ページ内にある項目について入力チェックを行いたい場合は、Model の $validate にあれこれと書くことで入力チェックを行うことが出来ます。
【参考】
→バリデーション
→Validateで新規登録と更新時の処理を分ける方法
→Validateのエラーメッセージを複数書いた時に最初のメッセージを出す方法
1ページ内に全ての項目があれば良いのですが、複数ページに入力項目がある場合、$validate に予め記載して、1ページ目の時点で入力チェックを行ってしまうと、2ページ目にある項目のチェックに引っかかりエラーとなってしまいます。
その対処方法。
Model の $validate は全ての項目について記載しておきます。
ですが、1ページ目の入力チェックを行う場合に2ページ目の項目のチェックを外します。
unset($this->Sample->validate['name']);
name という項目の入力チェックを外す場合は、コントローラで上記のように unset してあげれば対応できます。
CakePHP1.2 RC2
$this->redirect('/');
CakePHP1.1 ではこの後に exit; が必要でしたが、これからは内部的にやってくれるので、書かなくて良くなります。
CakePHP1.2 RC2
Session を利用する場合、有効期間は app/config/core.php に書かれた、
Configure::write('Session.timeout', '120'); Configure::write('Security.level', 'high');
が影響してきます。
上記の場合は、120秒×10=20分が有効期間となります。
サイト全体で期間の変更を行いたい時は、上記の2つの何れかを変更することで対応できます。
しかし、特定のページのみ有効期間を変えたいといった場合は、各コントローラーに
function __construct() { Configure::write('Security.level', 'low'); Configure::write('Session.cookie', 'sample'); Configure::write('Session.timeout', 120); parent::__construct(); }
このように書くと、このコントローラーのみ有効期間が120秒×300=10時間となります。
CakePHP1.2 RC2
サイトを公開する際に、app/config/core.php の debug は 0 にしますが、
Configure::write('debug', 0);
公開後、本番環境だけでどうしてもうまくいかないような場合がたまにあるかもしれません。
そんな時は、開発環境のようにデバック情報が表示されると、効率よく対応できそうならば、そのコントローラーのみデバック情報を表示させてしまいましょう。
方法は、該当のコントローラー内で
Configure::write('debug', 2);
と書くだけです。
(くれぐれも稼動中のコントローラーでやるのはやめましょう。
その場合は、コピーを作って、そちらでデバック情報を出しましょう。)