4月
04
2009

[CakePHP]$session->flashを表示する際の注意


すごく初歩的な話で恐縮なんですが、過去何度もミスをしてるのでメモ。。笑わないでね

コントローラで

$this->Session->setFlash("なにがし");

とセットした値は/layout/default.ctpの

<?php $session->flash(); ?>

で、表示されるわけですが、
setFlashするときに第4引数にキーを与えて、自分で読み出すときに必ずやってしまうミスがこれ。

if ($session->check("Message.auth")) {
    // echoをつけちゃ駄目!!
    echo $session->flash("auth");
}

$session->flash();にechoをつけちゃうと$sessionヘルパーの返り値であるtrueまで表示しちゃうので、

<div id="authMessage" class="message">このページにアクセスする権限がありません</div>1

のように、余計な「1」が表示されます。

ホントくだらない事なんですが、Authコンポーネントをいじると毎回コレに引っかかっているような気がします…(苦笑)

▼Advertisement

【Webサービスを作ろう!好評連載中!】このエントリーをはてなブックマークに追加 はてなブックマーク -
⇒ #1 挫折しないウェブサービス開発のための4つの心構え
Webサービス、Webアプリケーション開発に興味のある方は必見です!

【2月のイチオシ記事】このエントリーをはてなブックマークに追加 はてなブックマーク -
⇒ 社長になった私がお金にならないデータベースサイトを作った7つの理由

Written by suzuki in: メモ | タグ: ,

1件のコメント

RSS feed for comments on this post.


| I have been indebted to Aeros Theme. |