Динамические данные в codeigniter - PullRequest
0 голосов
/ 26 сентября 2018

Я новичок в codeigniter и работаю над шаблоном электронной коммерции.По умолчанию всякий раз, когда нажимается index(), он показывает все продукты в разных разделах (в формате html), и я хочу сделать это динамическим, поэтому я должен использовать запросы в index() для получения другого типа записей или есть какой-либо другой способ?Это мой код:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Home extends CI_Controller {
    public function index()
    {
        //echo "hello world";
        $this->load->view('index');
    }
}
?>

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

Сначала необходимо создать базу данных и таблицу в соответствии с вашими требованиями.Затем вы можете создать модель для справки, проверьте эту ссылку: https://www.codeigniter.com/userguide3/general/models.html

<?php 
class Blog_model extends CI_Model {

        public function get_data_first()
        {
                $query = $this->db->get('entries', 10);
                return $query->result();
        }

        public function get_data_second()
        {
               $query = $this->db->get('entries', 10);
                return $query->result();
        }
}
?>

После создания модели перейдите к контроллеру и включите его следующим образом:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Home extends CI_Controller {
    public function index()
    {
        $this->load->model('my_model');

        $data['first_list'] = $this->my_model->get_data_first();
        $data['second_list'] = $this->my_model->get_data_second();
        //echo "hello world";
        $this->load->view('index', $data);
    }
}
?>

Затем используйте ваш параметр в индексефайл вроде:

<html>
<head></head>
<body>
<?php
if($first_list){
 foreach($first_list as $each){
    echo $each->my_param;
 }
}
?>
<?php
if($second_list){
 foreach($second_list as $each){
    echo $each->my_param2;
 }
}
?>
</body>
</html>

Я надеюсь, что это полезно для вас.

0 голосов
/ 26 сентября 2018

В папке Models напишите файл Home_model.php для запроса базы данных.Предположим, у вас есть таблица «products».

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Home_model extends CI_Model{
        public function __construct()
        {
               parent::__construct();
        }

        public function getProducts()
        {           
            $this->db->from('products');            
            $query=$this->db->get();    
            $out = $query->result_array();
            return $out;
        }

}

Функция «getProducts» доставит вам все продукты из таблицы «products».Теперь в ваш контроллер загрузите библиотеку 'database' и модель.

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Home extends CI_Controller {


     function __construct(){

         parent::__construct();
         $this->load->model('home_model');
         $this->load->library('database');
     }
     public function index(){
         $products = array();
         $products = $this->home_model->getProducts();
         $this->load->view('index',$products);
     }

}

В функции индекса функции контроллера вы можете вызвать функцию 'getProduct' модели. И можете передать данные для просмотра.

Ссылка на документацию для модели.

введите описание ссылки здесь

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...