Консультируйся с решением WHERE в CodeIgniter оно не функционирует

я стараюсь делать простые консультации в базу данных MySQL с CodeIgniter. Для этого у меня есть вид, названный "Меню", здесь я буду наполнять ее с 3 категориями: Еда (2), Пившие (1) и Десерты (3). В базе данных у меня есть 2 подмостков, producto и categoria которая представила далее:

tabla producto

id, nombre, descripcion,precio,imagen,negocio_id,categoria_id

tabla categoria
id. nombre --Aquí va el nombre(Comidas, bebidas o postres)

В модели MenuModel у меня есть эти функции:

    public function getAllComidas($id=2)
{
    $this->db->select('*');
    $this->db->from(TABLE_PRODUCTO);
    $this->db->where('categoria_id',$id);
    $query = $this->db->get();
    return $query->result_array();

}

public function getAllBebidas($id=1)
{
    $this->db->select('*');
    $this->db->from(TABLE_PRODUCTO);
    $this->db->where('categoria_id',$id);
    $query = $this->db->get();
    return $query->result_array();

}

public function getAllPostres($id=3)
{
    $this->db->select('*');
    $this->db->from(TABLE_PRODUCTO);
    $this->db->where('categoria_id',$id);
    $query = $this->db->get();
    return $query->result_array();

}

В драйвере у меня есть следующее:

 public function index()
 {  


$data['menu'] = $this->MenuModel->getAllComidas();
    $this->load->view('estaticos/header');          
    $this->load->view('dinamicos/menu/menus', $data);
    $this->load->view('estaticos/menu_izquierdo');
    $this->load->view('estaticos/footer');  
    $this->load->view('estaticos/menu_derecho');
}



public function getBebidas()
 {

$data['menuBebidas'] = $this->MenuModel->getAllBebidas();

    $this->load->view('estaticos/header');          
    $this->load->view('dinamicos/menu/menus', $data);
    $this->load->view('estaticos/menu_izquierdo');
    $this->load->view('estaticos/footer');  
    $this->load->view('estaticos/menu_derecho');

}



public function getPostres()
{

    $data['menuPostres'] = $this->MenuModel->getAllPostres();
    $this->load->view('estaticos/header');          
    $this->load->view('dinamicos/menu/menus', $data);
    $this->load->view('estaticos/menu_izquierdo');
    $this->load->view('estaticos/footer');  
    $this->load->view('estaticos/menu_derecho');


}

В виде я это использую, чтобы показывать данные называя только функцию еды:

 
              
            
'; } ?>

И если оно я функционирует, он показывает мне еду:

comidas

Но если я вновь использую тот же фрагмент кода, и только меняя имя функции например в:

foreach ($menu as $menuBebidas)

Он показывает мне повторенный элемент и не все напитки или десерты в зависимости от идентификации:

bebidas

Он им был бы благодарен за то, чтобы они сказали мне, в котором я болен. Большое спасибо.

2
задан 22.03.2016, 21:07
1 ответ

Твоя проблема состоит в том, что в index он называет данные только ее funciГіn getallComidas ()

public function index(){
  $data['menu'] = $this->MenuModel->getAllComidas();
  $this->load->view('estaticos/header');          
  $this->load->view('dinamicos/menu/menus', $data);
  $this->load->view('estaticos/menu_izquierdo');
  $this->load->view('estaticos/footer');  
  $this->load->view('estaticos/menu_derecho');
}

Для каждого меню ты был бы должен звонить каждый funciГіn, если ты хочешь использовать их например так:

public function index(){
  $data['menu'] = $this->MenuModel->getAllComidas();
  $data['menuBebidas'] = $this->MenuModel->getAllBebidas();
  $data['menuPostres'] = $this->MenuModel->getAllPostres();
  $this->load->view('estaticos/header');          
  $this->load->view('dinamicos/menu/menus', $data);
  $this->load->view('estaticos/menu_izquierdo');
  $this->load->view('estaticos/footer');  
  $this->load->view('estaticos/menu_derecho');
}

и потом в виде ты должен называть их в foreach для каждый menГє:

foreach ($menu as $menu){
  //presentar datos
}

foreach ($menuBebidas as $menu){
  //presentar datos
}

foreach ($menuPostres as $menu){
  //presentar datos
}

не забывай, что codeigniter envГ - в каждый элемент договоренности [такие 119] $data как новая переменная, а именно чтобы обращаться каждый menГє, ты должен использовать эти переменные в foreach.

1
ответ дан 24.11.2019, 14:42
  • 1
    Ах ok foreach, если нет проблемы, эх ах и # 237; что я появился, и # 243; мое сомнение, потому что в момент называния их завися, если она пилась или была съедена я repet и # 237; в данные. Спасибо, оставь это проверяем то, что ты говоришь, и я комментирую результаты. – x4mp73r 23.03.2016, 00:48
  • 2
    Правда была очень простой, я тебе должен одну, спасибо: D – x4mp73r 23.03.2016, 00:59
  • 3
    ok, ничего, вкуса помогать в сообщество. – Juan Pinzón 23.03.2016, 01:19

Теги

Похожие вопросы