我有一个登录表单,我在控制器中设置无效登录的flash消息:
$this->Session->setFlash(__('Invalid username or password'));
并在ctp文件中显示如下信息:
<div id="error" >
<?php
echo $this->Session->flash();
?>
</div>
div的CSS如下:
#error {
padding:10px;
display:inline-block;
margin-right: 18px;
font-size:16px;
font-weight:600;
position:relative;
top:20px;
}
加载页面时,会显示空的Flash消息。
如何检查$this->Session->flash();
是否为空并仅在不为空时显示div?
当消息为空时,页面加载时的flash消息如下所示:
类似的方式,当设置消息时它看起来像这样:
答案 0 :(得分:1)
试试这个:
使用错误提醒,成功提醒等创建自定义元素...
<强> /View/Elements/error_alert.ctp 强>
<!-- Example Bootstrap Error Alert -->
<div class="alert alert-danger">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong><?php echo $message ?></strong>
</div>
<强> /View/Elements/success_alert.ctp 强>
<!-- Example Bootstrap Succes Alert -->
<div class="alert alert-success">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong><?php echo $message ?></strong>
</div>
在观看次数中添加此项,仅在必须显示消息时显示
<!-- It´s will work for all alert types (not only for error alerts) -->
<div class="col-md-12">
<?php echo $this->Session->flash(); ?>
</div>
如果你想使用一个在控制器中添加它:
成功提醒
$this->Session->setFlash('Success message!', 'success_alert');
错误提示
$this->Session->setFlash('Error message!', 'error_alert');