【发布时间】:2023-03-03 06:59:25
【问题描述】:
这是我对控制器的操作
public function invite()
{
if($this->getRequest()->isPost()){
$data_array = $this->getAllParams();
$emailList = explode(",", $data_array['emails']);
$message = $data_array['message'];
$error_emails = array();
if(sizeof($emailList) <= 1){
$this->view->message = '<div class="alert alert-danger"> Please enter more than one email address and please separate emails by a "," (comma)</div>';
}
else{
$x = 0;
foreach($emailList as $singleEmail){
if (!filter_var(trim($singleEmail), FILTER_VALIDATE_EMAIL)) {
$error_emails[] = $singleEmail;
}
else{
//send emails here
$x++;
}
}
if(sizeof($error_emails) > 0){
$email_str = implode(",",$error_emails);
if($x > 0 ){
$this->view->message = '<div class="alert alert-success"> Successfully Sent! </div> ';
}
$this->view->message .= '<br /><div class="alert alert-danger"> Message to this emails were not sent! <b>'.$email_str.'</b> <br /> Please enter valid emails!</div>';
}else{
$this->view->message = '<div class="alert alert-success"> Successfully Sent! </div>';
}
}
$request = $this->getRequest();
$request->setParam('emails', null);
$request->setParam('message', null);
}
}
我尝试了我找到的解决方案; 如您所见,我尝试使用 setParam 方法将值设置为 null。不幸的是,这不起作用。 未设置的数组也不起作用-不确定我是否做对了。 无论如何,我不想重定向。只想解除。有人可以帮我吗?我已经尝试了几个小时了。提前致谢。
【问题讨论】:
-
尝试标头php.net/manual/en/function.header.php 并强制重新验证。会话/令牌也是另一种选择。
-
您避免重定向的原因是什么?
-
为什么使用html的字符串而不是控制器插件FlashMessenger?
标签: php post zend-framework2 page-refresh unset