2013-02-10 71 views
0

我有這個項目,我正在使用,用戶可以註冊並分配一個ID。那麼用戶就可以發佈博客或評論,這些博客或評論將獲得與用戶userID相同的authorID。Codeigniter:獲取用戶名和ID

我需要一種方法讓他們的名字發佈在這些博客或消息下面,而不是他們的ID--目前它的用途。

我的博客控制器處理博客中(評論是相似的)具有添加博客功能的異常:

function blogToevoegen() { 
    $this->form_validation->set_rules('blogtitel', 'blogtitel',  'min_length[3]|required|xss_clean|callback_username_check'); 
    $this->form_validation->set_rules('blogtekst', 'blogtekst', 'min_length[2]|required|xss_clean'); 
    if ($this->form_validation->run() == FALSE) { 
     $this->load->view('view_page', $this->view_data); 
    } else { 
     $data = array(
      'id' => $this->input->post('id'), 
      'blogtitel' => $this->input->post('blogtitel'), 
      'blogtekst' => $this->input->post('blogtekst'), 
      'auteur_id' => $this->session->userdata('gebruiker_id'), 
     ); 
     $this->db->set('datum', 'NOW()', FALSE); 
     $this->db->insert('blogs', $data); 
     redirect('blog/eigenblogs'); 
    } 
} 

處理該博客文章的顯示A的功能(這也得到鏈接到評論一個博客)

function comments() { 
    $this->db->where('id', $this->uri->segment(3)); 
    $this->db->select('blogtitel, blogtekst, auteur_id, datum'); 
    $data['query2'] = $this->db->get('blogs'); 
    $this->db->where('boodschap_id', $this->uri->segment(3)); 
    $data['query'] = $this->db->get('comments'); 
    $data ["titel"] = "PXL - Comment"; 
    $data ["pagina"] = "content_comment"; 
    $this->load->view("view_page", $data); 
} 

顯示這些博客視圖代碼(左代碼的註釋出)

<?php foreach ($query2->result() as $rij): ?> 
          <div class="post"> 
           <h2><?= $rij->blogtitel ?></h2> 
           <p><?= $rij->blogtekst ?></p> 
           <p class="meta">Posted by <a href="#"><?= $rij->auteur_id ?></a> on <?= $rij->datum ?> 
           </p> 
          </div>       
         <?php endforeach; ?> 
         <hr> 

我需要一種方法來將auteur_id更改爲名稱(由第一個姓+名組合而成)。

回答

0

這裏你需要的是SQL加入。查找更多關於它的CI manual

這裏是你所需要的一個例子:

$this->db->select('*'); 
$this->db->from('blogs'); 
$this->db->join('users', 'users.id = blogs.author_id'); 

$query = $this->db->get(); 

這將讓你所有的博客文章以及基於AUTHOR_ID將查詢的用戶表中的用戶。

+0

我在我的評論功能中試用了這個樣子 $ this-> db-> select('*'); $ this-> db-> from('blogs'); $ this-> db-> join('gebruikers','blogs.auteur_id = gebruikers.gebruiker_id'); $ data ['query2'] = $ this-> db-> get(); 但它不再顯示任何東西(它留下整個部分空白處理博客本身,所有其餘顯示正常) – 2013-02-10 16:18:54

+0

沒關係,解決了它。非常感謝 – 2013-02-10 16:40:06

+0

如何限制從博客表返回的柱子?當我這樣做時出現錯誤''this-> db-> select('id,comment,user_id,created_at');'' – Sahan 2015-06-09 11:46:53