2013-04-06 52 views
0

這裏我的問題:活動記錄,並與特定的ID行加入

  • 我稱之爲一個控制器:事件
  • 我叫一個觀點:inscrits_liste
  • 我叫一個模型:inscrits_model

我有我的查詢2分表上工作:

表1:inscrits
表2:etats

並稱爲第三張表:事件

在我的表 「etats」

我有 'etat_id' 和 'etat_lib'

我想有來自1個「inscrit」的細節與針對指定的事件ID的'etat' 的庫。

events.php

<?php 

if (!defined('BASEPATH')) 
    exit('No direct script access allowed'); 

class Events extends MY_Controller 
{ 

    public function __construct() 
    { 
     parent::__construct(); 

     $this->load->model('event_model', 'event_m');    // Modele des évènements 
     $this->load->model('inscrits_model', 'inscrits_m');    // Modele des inscrits 
     $this->template->title('Gestion des évènements'); 
     $this->template->data('titre', 'EVENTS'); 
     $this->is_validated(); 
    } 

    public function index() 
    { 
     // Preparation du template 

     $this->template->data('heading', 'Liste des evènements'); 
     $this->template->widgets('content', 'events_list'); 

     try 
     { 
      // On recupère la liste des events 
      $this->template->data('evt', $this->event_m->get_all(array(), array('evenement_title ASC'))); 

      // On charge le template 
      $this->template->load(); 
     } 
     catch (Exception $e) 
     { 
      echo $e->getCode() . " => " . $e->getMessage(); 
     } 
    } 

    public function inscrits($event_id) 
    { 
     // Preparation du template 

     $this->template->data('heading', 'Liste des inscrits'); 
     $this->template->widgets('content', 'inscrits_liste'); 

     try 
     { 
      // On recupère la liste des inscrits 
      $this->template->data('inscrits', $this->inscrits_m->inscrits_event($event_id)); 

      // On charge le template 
      $this->template->load(); 
     } 
     catch (Exception $e) 
     { 
      echo $e->getCode() . " => " . $e->getMessage(); 
     } 
    } 

} 

型號:

<?php 

class inscrits_model extends MY_Model 
{ 

    protected $table = 'inscrits'; 
    protected $primary = 'inscrits_id'; 

    public function inscrits_event($event_id) 
    { 

     $this->db->select('inscrits_id,inscrits_pseudo,inscrits_nom,inscrits_prenom,inscrits_email,etat_lib'); 
     $this->db->from('inscrits'); 
     $this->db->join('etats', 'inscrits.inscrits_etat_id = etats.etat_id', 'inner'); 
     $this->db->where('inscrits_evenement_id', $event_id); 
     $joint = $this->db->get(); 
     return $joint; 
    } 

} 

/* End of file admin_model.php */ 
/* Location: ./application/models/admin_model.php */ 

的問題是使用的特定事項標識,以便爲當前事件1個inscrit請求。

我找不到機制:■

我知道模型做了查詢,該控制器使用該模型DATAS發送到視圖。 但在我的情況下,在模型中,我想使用從視圖中的行給出的數據(當前event_id)。

我迷路了!

+0

請張貼錯誤您收到:) – sbaaaang 2013-04-07 01:49:35

回答

0

這裏是你的問題

$joint = $this->db->get(); 
    return $joint;//this is not returning the results :) 

你要做的:

public function inscrits_event($event_id) 
    { 
$this->db->select('inscrits_id,inscrits_pseudo,inscrits_nom,inscrits_prenom,inscrits_email,etat_lib'); 
     $this->db->from('inscrits'); 
     $this->db->join('etats', 'inscrits.inscrits_etat_id = etats.etat_id', 'inner'); 
     $this->db->where('inscrits_evenement_id', $event_id); 
     $joint = $this->db->get(); 
     return $joint->result(); 
    } 
+0

很抱歉,但它不是我的問題/問題。用戶已經存在,事件也一樣。實際上,用戶通過我們網站的前臺訂閱活動。我們/我開發了後臺。其中我有一個頁面,裏面有我們所擁有的不同事件。當我點擊其中一個事件時,我會與訂閱用戶一起進入頁面。默認情況下,用戶通過與「etats」錶鏈接的列「inscrits_etat_id」獲得「未付款」狀態。我只想爲每個用戶提供狀態標籤的詳細信息(位於「etats」表中),所以我做了一個內部連接查詢,但它不起作用。:) – Kliklipse 2013-04-06 19:57:27

+0

@Kliklipse ok :)你能定義「因爲我不明白你的問題在哪裏,你可以發佈你收到的錯誤?謝謝 – sbaaaang 2013-04-07 01:46:33

+0

@Kliklipse ok gotcha,現在檢查我的答案,你必須使用**返回$ joint-> result()* *對於所有記錄,**返回$ joint-> row(); **對於單個記錄;) – sbaaaang 2013-04-07 01:48:51