如何将数据库查询结果存储在视图中的变量中

时间:2014-08-28 17:32:00

标签: php codeigniter

我想将数据库查询结果存储在变量的视图部分中。我正在尝试但不能正常工作。

我的观看代码

$cd=''.base_url().'/video/series/';
$count = count($cd);
for ($i = 0; $i < $count; $i++) 
{
  print'"'.$cd[$i][1].'",';  

}

我的控制器代码

public function series() {

    $result= $this->video_model->series_list();

    return $result;


}

我的模型代码

function series_list()
{

    $string = trim($this->input->get_post('term'));
    $query = $this->db->query("SELECT name FROM `series` WHERE name LIKE '%".$string."%'");


    return $query->row_array();

}

$cd=''.base_url().'/video/series/'; not get any array data ,only get blank data

2 个答案:

答案 0 :(得分:2)

您只能在控制器中获取post变量值。但你试图在模型中得到它。那是错的。

控制器:

public function series() {
$string = trim($this->input->get_post('term'));    
$data['result']= $this->video_model->series_list($string);
$this->load->view('folder/filename', $data);  
// in your case i think folder= video and filename = series
// in this way you can pass value from controller to view

}

型号:

function series_list($string = null)
{
    if($string != ''){
       $query = $this->db->query("SELECT name FROM `series` WHERE name LIKE '%".$string."%'");
       return $query->row_array();
    }
    else
       return false;
}

查看:

<?php
 var_dump($data);
?>

您可以在视图中获取结果集,并可以根据需要使用它。

答案 1 :(得分:0)

您需要在某个数组中传递变量(在视图方法中),以便在视图页面上可以访问公共数组中的所有变量

控制器代码将是

public function series() 
{
  $inputData     =trim(strip_tags($this->input->get_post('term')));
  $data['result']= $this->video_model->series_list($inputData);
  $this->load->view('directory/viewpage',$data); //$data is array with all variables inside it
}

模型代码是

function series_list($data)
{
 $string = $data;
 $query = $this->db->query("SELECT name FROM `series` WHERE name LIKE '%".$string."%'");
 if( $query->num_rows>0)
 {
  return $query->row_array();
 }
 else
 {
   return false;
 }
}

查看代码

<?php
     if(isset($result)&&($result!=''))
    {
      echo "<pre/>";
      print_r($result); // Or var_dump($result);
    }
?>