У меня проблема при использовании функции check_login.
Когда я вхожу HTTP: // локальный / дома / и введите пароль администратора, он не перенаправляет на домашнюю страницу администратора. Но когда я пытаюсь HTTP: // локальный / дом / контроль / lampu. Он все еще перенаправляет на страницу входа.
defined('BASEPATH') OR exit('No direct script access allowed');
class Login extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->model('loginModel');
$this->load->model('pengaturanModel');
$this->form_validation->set_error_delimiters("toastr.error('", "','');");
}
public function index()
{
if($this->session->userdata('id_pengaturan')){
redirect('control/lampu');
}
$data['pesan'] = '';
$this->form_validation->set_rules('kodeakses', 'Kode Akses Keamanan', 'trim|required|md5');
if ($this->form_validation->run() == FALSE)
{
}
else
{
$data['pesan'] = "toastr.error('Kode Akses Keamanan Tidak Boleh Kosong!','')";
$check = $this->loginModel->get_records($this->input->post('kodeakses'));
if($check){
foreach ($check as $row) {
$login = array(
'id_pengaturan' => $row->id,
);
$this->session->set_userdata($login);
redirect('control/lampu');
}
}else{
$data['pesan'] = "toastr.error('Kode Akses Keamanan Salah!','')";
}
}
$this->load->view('login', $data);
}
}
И этот код логин модели
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class LoginModel extends CI_Model {
function get_records($kodeakses){
$query = $this->db->get_where('pengaturan', array('kode_akses'=> $kodeakses), 1);
if($query->num_rows() == 1){
return $query->result();
}else{
return false;
}
}
function getKode($kodeakses){
$query = $this->db->get_where('pengaturan', array('kode_akses'=> $kodeakses), 1);
if($query->num_rows() == 1){
return true;
}else{
return false;
}
}
}
/* End of file login_m.php */
/* Location: ./application/models/login_m.php */
Это потому что num_rows()
не является частью функций построителя запросов. Вы можете попытаться использовать это, чтобы посчитать ваш результат:
$this->db->count_all_results()
Ссылаться на — https://www.codeigniter.com/user_guide/database/query_builder.html#limiting-or-counting-results
Если это решает ваш ответ, отметьте это как ответ. Спасибо!
использование
$query = $this->db->query("YOUR QUERY");
$row = $query->row();
if (isset($row))
{
echo $row->title;
echo $row->name;
echo $row->body;
}