#php #mysql #codeigniter-3
#php #mysql #codeigniter-3
Вопрос:
Я хочу отобразить данные зарегистрированного пользователя. Пожалуйста, скажите мне, как я могу сделать динамический запрос. вот мой код:
КОНТРОЛЛЕР:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Customers extends CI_Controller {
public function __construct()
{
parent::__construct();
// Your own constructor code
$this->load->model('customers_model');
}
public function index()
{
$data['customers_data'] = $this->customers_model->getCustomers();
$this->load->view('Admin/header');
$this->load->view('Admin/navbar');
$this->load->view('Admin/sidebar');
$this->load->view('Admin/customers', $data);
$this->load->view('Admin/footer');
}
}
Модель:
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
Class Customers_model extends CI_Model {
public function __construct()
{
parent::__construct();
}
function getCustomers()
{
$this->db->select('*');
$this->db->from('customers');
$query = $this->db->get();
return $query;
}
}
нажав на эту ссылку
<a href="<?php echo base_url();?>customers"> <i class="la la-users"></i><span>All Customers</span></a>
После входа в систему пользователь увидит эту ссылку, когда он нажимает на эту ссылку, затем извлекает все данные, которые вставил этот вошедший в систему пользователь. в настоящее время отображаются все данные.
Комментарии:
1. Вы хотите получить всех клиентов или вошедшего в систему пользователя? Ваш код пытается получить всех клиентов из базы данных. Для вошедшего в систему пользователя вам необходимо поддерживать сеанс, а затем сохранять идентификатор пользователя в переменной сеанса после авторизации пользователя. Вы уже это сделали?
2. Мы также понятия не имеем, как выглядит ваша база данных, поэтому нам довольно сложно привести вам правильный пример. Однако вам следует изучить возможность использования -> where()
3. В настоящее время выполняется выборка всех данных, но я хочу получить только данные зарегистрированного пользователя. да, я уже сохраняю идентификатор в сеансе после аутентификации. сатиш саини
4. пожалуйста, покажите, где вы храните информацию о сеансе пользователя
5. вы хотите сделать это через Ajax (возможно)?
Ответ №1:
Вы должны хранить зарегистрированные данные в сеансе и файлах cookie. После посещения этой страницы вы должны проверить, установлены данные сеанса или cookies или нет. Если были установлены данные сеанса или cookies, то запросите идентификатор клиента из этого и передайте свой запрос как $this->db->where(array('customer_id' => '1'))
.
Ваш код становится.
Контроллер :
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Customers extends CI_Controller {
public function __construct()
{
parent::__construct();
// Your own constructor code
$this->load->model('customers_model');
}
public function index()
{
$customer_id = $this->session->customer;
$data['customers_data'] = $this->customers_model->getCustomers($customer_id);
$this->load->view('Admin/header');
$this->load->view('Admin/navbar');
$this->load->view('Admin/sidebar');
$this->load->view('Admin/customers', $data);
$this->load->view('Admin/footer');
}
}
Модель :
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
Class Customers_model extends CI_Model {
public function __construct()
{
parent::__construct();
}
function getCustomers($customer_id)
{
$this->db->select('*');
$this->db->from('customers');
$this->db->where(array('customer_id' => '1'))
$query = $this->db->get();
return $query;
}
}
Ответ №2:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Customers extends CI_Controller {
public function __construct()
{
parent::__construct();
// Your own constructor code
$this->load->model('customers_model');
}
public function index()
{
$customer_id = $this->session->customer;
$data['customers_data'] = $this->customers_model->getCustomers($customer_id);
$this->load->view('Admin/header');
$this->load->view('Admin/navbar');
$this->load->view('Admin/sidebar');
$this->load->view('Admin/customers', $data);
$this->load->view('Admin/footer');
}
}
?>
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
Class Customers_model extends CI_Model {
public function __construct()
{
parent::__construct();
}
function getCustomers($customer_id)
{
$this->db->where('customer_id',$customer_id)
$query =$this->db->get('customers');
if($query->num_rows()>0)
{
return $query->result_array();
}
return[];
}
}