php - 通过检查数据库中的密码并移至 codeigniter 中的下一页

标签 php html forms codeigniter

我正在尝试通过检查数据库中的密码和用户名来移动到 codeigniter 中的下一页。这是我的代码,问题是我在没有检查数据库的情况下进入页面。请帮忙。 App_stay_login.php页面

<?php echo form_open('Welcome/login','id="loginForm"'); ?> 
<div class="form-group">
<label class="sr-only" for="form-username">Username</label>
<input type="text" name="form-username" placeholder="Username..." class="form-username form-control" id="form-username">
</div>
<div class="form-group">
<label class="sr-only" for="form-password">Password</label>
<input type="password" name="form-password" placeholder="Password..." class="form-password form-control" id="form-password">
 </div>
<button type="submit" class="btn">Sign in!</button>    
<?php echo form_close(); ?>

欢迎.php页面

public function index()
{
$data['admin'] = $this->Login_set->get_pass('form-password');
$this->load->view('App_stay/App_stay_login');
}
public function profile()
{
$this->load->view('App_stay/pages/profile');
}
public function __construct()
{
parent::__construct();
$this->load->model('Login_set');
$this->load->library('form_validation');
}
public function login()
{
$this->load->helper('form');
$this->load->library('form_validation');
$this->form_validation->set_rules('form-username', 'Username', 'required');
$this->form_validation->set_rules('form-password', 'Password', 'required');
if ($this->form_validation->run() === FALSE)
{
$this->load->helper('url');
$this->load->view('App_stay/App_stay_login');
}
else
{
$this->load->helper('url');
$this->Login_set->set_pass();          
$this->load->view('App_stay/pages/profile');
}
} 
public function profile1()
{
$this->load->helper('url');   
$this->load->view('App_stay/pages/profile');
}

登录设置.php

class Login_set extends CI_Model {
public function __construct()
{
$this->load->database();
}
public function is_logged_in()
{
if ($logged_in == FALSE)
{
redirect('index.php');
}
}
public function set_pass()
{
$this->load->helper('url');
$data = array(
'username1' => $this->input->post('form-username'),
'password1' => $this->input->post('form-password')
);
$this->db->select('*')->from('admin_login')
->group_start()
->where('admin_username', 'username1')       
->where('admin_password', 'password1')
->group_end()
->get();
}
public function get_pass($password= FALSE)
{
if (md5($password) === FALSE)
{
$query = $this->db->get('admin_login');
return $query->result_array();
}
$query = $this->db->get_where('admin_login', array('admin_password' => md5($password)));
return $query->row_array();
}

最佳答案

Controller

$count=$this->Login_set->set_pass();          
if($count > 0){
    $this->load->view('App_stay/pages/profile');
}else{
    $this->load->view('App_stay/App_stay_login');
}

型号

public function set_pass()
{
$this->load->helper('url');
$data = array(
'username1' => $this->input->post('form-username'),
'password1' => $this->input->post('form-password')
);
$sql = $this->db->select('*')->from('admin_login')
->group_start()
->where('admin_username', $data['username1']) //to access the value of array       
->where('admin_password', $data['password1']) //to access the value of array
->group_end()
->get();

return $query->num_rows($sql); //return number of affected rows
}

关于php - 通过检查数据库中的密码并移至 codeigniter 中的下一页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34260823/

相关文章:

php跟踪随机条件

php - 我无法将数据插入 Laravel 5.2 中的表中

php - 413 请求实体太大(Wordpress Laravel Forge)

html - 如何根据作为字符串的查询值格式化html

jquery - 我如何指示此菜单下的表格已完成

html - 选择选择选项时如何停止表单字段跳转?

javascript - Vue.js 2 在一个单文件组件中定义多个属性

html - 保持 ul li 元素居中,即使在缩小到一行或多行时也是如此

PHP 验证链接到下一页

jQuery 提交带有带有新操作的单击事件的表单