Php 在弹出窗口中显示错误消息
Iam在主页中显示登录表单的弹出窗口。当我给出错误的电子邮件/密码时,弹出窗口消失,当我打开弹出窗口中显示的弹出错误消息时 我的主页Php 在弹出窗口中显示错误消息,php,codeigniter,Php,Codeigniter,Iam在主页中显示登录表单的弹出窗口。当我给出错误的电子邮件/密码时,弹出窗口消失,当我打开弹出窗口中显示的弹出错误消息时 我的主页 <div class="modal fade" id="signin" role="dialog"> <div class="modal-dialog "> <div class="modal-content"> <div class="modal-header">
<div class="modal fade" id="signin" role="dialog">
<div class="modal-dialog ">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title"> Sign in </h4>
</div>
<div class="modal-body">
<div class="tabiib-popbox">
<div class="col-xs-12">
<ul class="nav nav-tabs poptabs">
<li class="tab signin"><a data-toggle="tab" href="#home"> Sign In</a></li>
</ul>
<div class="tabiib-signin">
<div class="tab-content">
<div id="home" class="tab-pane fade in">
<form class="pop-l" action="<?php echo base_url('LoginPopup');?>" method="post" name="signin" enctype="multipart/form-data">
<?php echo $this->session->flashdata('Message');?>
<div class="form-group">
<label for="email">Mobile Number / Email ID </label>
<input type="text" name="emailMobileNumber" class="form-control" id="email">
</div>
<div class="form-group">
<label for="pwd">Password</label>
<input type="password" name="password" class="form-control" id="pwd">
</div>
<div class="pop-b text-center">
<input type="submit" class="btn popbtn" value="Sign In">
</div>
</form>
</div>
&时代;
登录
若你们使用重定向(“”),那个么页面肯定会被重定向,弹出窗口也不会显示。使用ajax提交表单,它将解决您的问题 最好的方法是使用ajax提交表单。但如果您不想使用ajax,那么首先,如果出现错误,请在会话中编写错误消息。然后在主页重定向后,检查会话是否出错。如果存在错误,则显示带有错误消息的模型。但这不是一条闪光信息,记住 试试这个
替换
$msg = '<div class="alert alert-danger"><i class="fa fa-ban"></i>';
$msg .= 'Mobile Number/Email or Password does not match';
$msg .= '</div>';
$mesg=$this->session->set_flashdata('Message', $msg);
redirect('');
你能澄清你的问题吗?错误信息正确显示在弹出窗口中当我提供了错误的凭据但弹出窗口消失时,我需要弹出窗口停留在主页上并在弹出窗口中显示错误信息你说弹出窗口消失是什么意思?它在从登录弹出窗口重定向后出现吗?在我提供正确的凭据之前,弹出窗口不会消失,我需要@Alex,但这是有意义的。。。如果您有错误,它会添加到flash中,然后重定向到显示flash消息的页面。如果您一直输入错误的数据并提交表单,那么逻辑将保持不变:表单(错误的凭据)>post>error>flash消息。。。如果您希望它在一段时间后消失,那么必须使用javascript。将消息放在视图中的div中,并将div上的超时设置为淡入淡出或其他内容。如何在该页面中执行$.ajax({type:'POST',url:url,data:{data:data},dataType:'json',success:function(response.status='success'){$(“#modelid”).modal(“hide”)}if(response.status=='error'){$(“#messagedivinpopupmodel”).html(response.content');}}}}});他正在设置一条flash消息没有必要设置flash消息,有其他方法可以显示消息。因此,他应该改变他的方法。然后你应该说“如果使用重定向,它将不起作用”因为这不是真的,虽然他的方法并不现代,但它应该可以工作,我认为这就是他想要解决的问题。问题是在您的操作url中,请在视图中尝试此操作action=“”
必须给出我在routes$route[“PatientLoginPoup”]=“RegisterController/PatientLoginPoup”中编写的控制器名称;因此,为什么我没有给出控制器名称在视图中删除此条件if(uri_string()==“/LoginPopup”),
消息显示正确,但弹出窗口消失,直到我不明白您试图做什么。您能添加问题的屏幕截图和弹出窗口的css吗
$msg = '<div class="alert alert-danger"><i class="fa fa-ban"></i>';
$msg .= 'Mobile Number/Email or Password does not match';
$msg .= '</div>';
$mesg=$this->session->set_flashdata('Message', $msg);
redirect('');
$data['msg'] = '<div class="alert alert-danger"><i class="fa fa-ban"></i>';
$data['msg'] .= 'Mobile Number/Email or Password does not match';
$data['msg'] .= '</div>';
$this->load->view('LoginView',$data); #LoginView is a view where you login form is present
if(uri_string()=="/LoginPopup")
{
echo $msg;
}