我正在使用Joomla! 2.5并且我试图将变量从公共函数传递到同一个类中的受保护函数,但是我做错了。不知道它是什么?
public function getJobsType() {
$jobsquery = $db->getQuery(true);
// Select the records for the connected user
$jobsquery = "SELECT jobassigned FROM #__jobs_userac WHERE user =".$userId;
$db->setQuery($jobsquery);
$row = $db->loadRowList();
// I have one row per user so it returns only one field
$job_id = $row['0']['0'];
return $job_id;}
protected function getListQuery() {
//If i set the variable values my self the query is working
// ex. $job_id ="1,2,3";
$db = $this->getDbo();
$query = $db->getQuery(true);
$query ->select($this->getState('list.select', 'DISTINCT a.*'));
$query->from('`#__jobs_data` AS a');
// I want to pass the values from the getJobsType() here
$query->where('type IN ('.$job_id.')');
................
提前感谢您提供的任何帮助。
答案 0 :(得分:0)
根据评论,您的问题是您实际上没有将任何内容传递给受保护的功能。因此,按值传递job_id,如下所示:
return getListQuery($job_id);
并将您的功能定义更改为:
protected function getListQuery($job_id) {
有多种方法可以解决您的问题,但这似乎是最直接的方式。