我在codeigniter中有一个表格,如下所示:
<form action="<?php echo site_url()?>login/admin_login" method="post">
<?php //echo form_open('login/admin_login'); // This is also not working?>
<div class="form-group">
<i class="fa fa-user fa-2x" aria-hidden="true"></i>
<input type="email" name="email" class="form-control" placeholder="Email Address">
</div>
<div class="form-group">
<i class="fa fa-unlock-alt fa-2x" aria-hidden="true"></i>
<input type="password" name="password" class="form-control" placeholder="Password">
<div class="center">
<a href="#" class="pull-xs-right">
<small>Forgot?</small>
</a>
</div>
<div class="clearfix"></div>
</div>
<div class="center">
<?php echo form_submit(['name'=>'submit', 'value'=>'Login', 'class'=>'btn btn-azure']); ?>
</div>
</form>
我的控制器是这样的:
<?php
class Login extends CI_Controller {
public function admin_login()
{
print_r($_POST); die();
}
}
?>
我已正确分配了基本网址。有关详细信息,请参阅$config['base_url'] = 'http://localhost/ims/codeigniter/';
。当我提交表单时,url会更改为目标控制器,但它会加载相同的表单。当我用url重新加载页面时(在提交表单之后),返回一个空数组。它不返回表单提交的值。为什么会这样?我在做错的地方。我已经交叉检查了表单目标控制器y检查元素,我在哪里犯错误?
答案 0 :(得分:0)
使用CI表单Html表单
更改此
<?php echo form_submit(['name'=>'submit', 'value'=>'Login', 'class'=>'btn btn-azure']); ?>
到这个
<input type="submit" name="submit" value="Login" class= "btn btn-azure">
确保您的项目在网址中没有
index.php
。 (action="<?php echo site_url()?>index.php/login/admin_login
)强>
答案 1 :(得分:0)
我正在推测提交按钮代码,所以请使用它来检查它是否真的设置了必填字段,只是为了检查。
<?php
class Login extends CI_Controller {
public function admin_login(){
if(isset($_POST['submit'])){
print_r($_POST); die();
}else{
echo 'use input tags!';
}
}
}
?>