很抱歉发布了这样一个noob问题,但是在返回单曲时遇到了困难 从数据库行并将其传递给模型。这是我的模型中的方法:
public function test($user_id)
{
$query = $this->db->query("SELECT COUNT(*) AS test FROM test WHERE user_id = '.$user_id.'");
return $query->first_row('array');
}
以下是我的控制器的示例,其中包含我的模型中的其他返回值:
class MY_Controller extends CI_Controller
{
public $layout;
public $id;
public $data = array();
public function __construct()
{
parent::__construct();
$this->output->nocache();
$this->load->model('subject_model');
$this->load->model('user_model');
$this->load->model('survey_model');
$this->id = $this->session->userdata('user_id');
$this->data['check_if_already_posted_it_survey'] = $this->survey_model->checkIfAlreadyPostedSurvey('it_survey', $this->id);
$this->data['check_if_already_posted_lvis_survey'] = $this->survey_model->checkIfAlreadyPostedSurvey('lvis_survey', $this->id);
$this->data['test']= $this->survey_model->test($this->id);
$this->layout = 'layout/dashboard';
}
除了“test”之外,我可以将该数据数组中的所有值传递给我的视图。我基本上都尝试了一切。
CheckIfAlreadyPostedSurvey方法将返回 带有num_rows和I的行数可以通过编写以下内容轻松地在我的视图中打印它们的值:
<?=$check_if_already_posted_it_survey?>
在我看来,我该如何打印出“测试”?
提前致谢并道歉...
答案 0 :(得分:0)
我可能错了,但你试过吗
echo $this->survey_model->test($this->id);
答案 1 :(得分:0)
试试这个:
public function test($user_id)
{
$query = $this->db->query("SELECT COUNT(*) AS test FROM test WHERE user_id = '".$user_id."'");
return $query->row()->test;
}
这将返回一行作为对象,然后返回引用的行名称,在本例中为test
。
以下内容也适用。
public function test($user_id)
{
$query = $this->db->query("SELECT * FROM test WHERE user_id = '".$user_id."'");
return count($query->result());
}
你还搞砸了SQL语句中的引用。