我正在尝试弄清楚导致我的简单登录本地主机程序错误的原因。
我的base_url = http://localhost/MYTESTING
我的loginpage.php
控制器上有这个
public function login(){
$data['title'] = "TEST LOGIN";
$username = $this->input->post('username');
$password = $this->input->post('password');
$this->load->view("loginheaderTest.php",$data);
$this->load->view("loginpage.php",$data);
$this->load->view("footerTest.php",$data);
if(isset($_POST['login']))
{
$data['authenticate'] = $this->AuthenticationTest->authenticate_acount($username,$password);
if(!empty($data['authenticate']))
{
echo"<script>
alert('Success');
</script>
";
}
else
{
echo"<script>
alert('Invalid Username or Password');
</script>
";
}
}
}
我的模型上有这个
public function authenticate_account($username,$password){
$this->db->select("username");
$this->db->from("accounts");
$this->db->where("username",$username);
$this->db->where("password",$password);
$query = $this->db->get();
return $query->row_array();
在我看来:
<div class="panel-body">
<form action = "<?base_url();?>" method = "POST">
<fieldset>
<div class="form-group">
<input class="form-control" placeholder="Username" name="username">
</div>
<div class="form-group">
<input class="form-control" placeholder="Password" name="password" type="password" value="">
</div>
<input type = "submit" class="btn btn-lg btn-success btn-block" value = "Login" name = "login">
</fieldset>
</form>
</div>
我很确定当我访问本地主机/我的测试并单击登录时,我的数据库配置中的配置是正确的,发生错误。
您的服务器配置是否允许使用 PHP 短标签?
You don't have permission to access /mytesting/< on this server.
看起来您的表单操作指向"/mytesting/<",并且以下"?"正在从错误消息中删除,因为它被解释为查询字符串。
更改此设置:
<form action = "<?base_url();?>" method = "POST">
对此:
<form action="<?php echo base_url(); ?>" method="POST">
或者在 php 或 .htaccess 中启用 PHP 短标签.ini。