7

異なる位置に2つのフォームがあるビューファイルがあります。

1 つのフォームは左隅にあり、もう 1 つは右隅にあります。

フォームが正常に送信されると、次を使用して成功メッセージが点滅します

$this->Session->setFlash();

問題は、Form1 がトリガーされた場合、Form1 の下、つまり左隅にメッセージのフラッシュを表示したいことです。

または、Form2 がトリガーされた場合、Form2 の下、つまり右隅にメッセージ フラッシュを表示したいと考えています。

しかし、私はレイアウトを入れたので、今は両方のメッセージが上部に表示されています

<?php echo $this->Session->flash(); ?>

これを変更したいのですが、これを達成する方法がわかりません.... :'(

4

3 に答える 3

20

setFlashを呼び出すときに、キー値を指定できます。例えば、

$this->Session->setFlash('This message is for form 1.', 'default', array(), 'form1');

次に、各フォームの上にフラッシュを印刷できます。指定されたキーに値がある場合にのみ表示されます。

<?php echo $this->Session->flash('form1') ?>

詳細については、こちらをご覧ください。

于 2013-02-08T04:42:06.053 に答える
0

echo $this->Session->flash();default.ctp から削除

次に、別の部門の別のフォームに追加します

たとえば、Form1で

<div class="leftflash">
<?php echo $this->Session->flash();?>
</div>

Form2 で

<div class="rightflash">
<?php echo $this->Session->flash();?>
</div>

それが役に立てば幸い

于 2013-02-08T04:40:40.647 に答える