2017-11-18 162 views
0

我在git集線器上得到這個庫數據,這是點燃的數據。爲什麼函數if/else在Datatables CI中不起作用(使用Ignited)

好了,我的代碼在我的控制器,

function json_survey(){ 
     header('Content-Type: application/json'); 
     $this->load->library('Datatables'); 
     $this->load->helper('datatables_helper'); 
     $this->datatables->SELECT('id_survey,judul_survey,status_survey,responden,detail_target,judul_kategori,judul_target'); 
     $dataids = array('id_survey'=> '$1','status_survey'=> '$2'); 
     $this->datatables->add_column('action',tombol_survey($dataids), 'id_survey,status_survey'); 
     $this->datatables->FROM('survey'); 
     $this->datatables->JOIN('kategori','survey.id_kategori=kategori.id_kategori'); 
     $this->datatables->JOIN('target','survey.id_target=target.id_target'); 


     return print_r($this->datatables->generate('json','')); 
    } 

,我有代碼MUY助手用函數來創建按鈕的if/else

function tombol_survey($ids) 
    { 
     $ci = & get_instance(); 
     if(!empty($ids)){ 
      $html = '<span class="actions">'; 
      if($ids['status_survey']=='terbit'){ 
       $html .= '<a href="' . base_url() . 'survey/edit/'.$ids['id_survey'].'">Tutup</a>'; 
      } 
      if($ids['status_survey']=='tertunda'){ 
       $html .= '<a href="' . base_url() . 'pertanyaan/tambah/'.$ids['id_survey'].'">Tambah</a>'; 
      } 
      if($ids['status_survey']=='tutup'){ 
       $html .= 'Hapus | '; 
      } 
      $html .= '<a href="' . base_url() . 'pertanyaan/tambah/' .$ids['id_survey']. '">Test</a>'; 
      $html .= '</span>'; 

      return $html; 
     } 
    } 

我的問題,如果功能不工作但包含2個參數(id_survey & status_survey)。 請幫我先生

看我的照片 Pic

+0

你需要調試 - $的數據ID - 用var_dump($的數據ID),並檢查它... – TimBrownlaw

+0

什麼是$ html返回? – TimBrownlaw

+0

html return是按鈕的返回代碼

回答

0

您需要執行一些簡單的調試...

如果您在本執行的var_dump您此行

$dataids = array('id_survey'=> '$1','status_survey'=> '$2'); 

像...

$dataids = array('id_survey'=> '$1','status_survey'=> '$2'); 
var_dump($dataids); 

你會得到

array (size=2) 
    'id_survey' => string '$1' (length=2) 
    'status_survey' => string '$2' (length=2) 

這些都不是你的任何的if/else測試,所以他們沒有人會評估。

你的HTML將評估是

</pre><span class="actions"><a href="http://cidev315.com/pertanyaan/tambah/$1">Test</a></span> 

所以第一件事情是從該行,使其成爲去除引號更改代碼...

$dataids = array('id_survey'=> $1,'status_survey'=> $2); 

,但我不能看到您正在設置$ 1和$ 2的值。

所以對於初學者刪除大約$ 1和$ 2的報價...他們是變量 - 不是字符串...

+0

錯誤'ParseError'先生如果沒有引用...在datatabes $ 1是id_survey類型數據整數和$ 2是status_survey類型數據枚舉先生 –

+0

然後使用雙引號。雙引號將評估$ 1和$ 2 ...單引號不計算變量,只是返回實際的字符串... – TimBrownlaw

+0

id_survey和狀態調查($ 1,$ 2)包括在內,我調試窗體幫手這個值包括....但是當我修改功能如果/其他不工作 –

相關問題