1
在我型號,我寫了這個函數MySQL的原始查詢笨的Active Record類錯誤VS MySQL的原始查詢
function get_question_result($lr_id)
{
$raw_query = 'SELECT question_record.qr_id, LEFT(question.question, 50) as question,
question.correct_answer
FROM question_record
INNER JOIN question ON question.q_id = question_record.q_id
WHERE question_record.lr_id = '.$lr_id.' ';
$query = $this->db->query($raw_query);
$questionresult = $query->result_array();
return $questionresult;
}
它工作罰款。它給了我我想要的陣列。我繼續我的項目。
然後突然間,我很好奇在CI Active Record Class中嘗試它。
function get_question_result($lr_id)
{
$this->db->select('question_record.qr_id, LEFT(question.question, 50) as question, question.correct_answer');
$this->db->from('question_record');
$this->db->join('question', 'question.q_id = question_record.q_id', 'inner');
$this->db->where('question_record.lr_id', $lr_id);
$result = $this->db->get()->result_array();
return $result;
}
它沒有工作。它給了我這個錯誤
PHP Fatal error: Call to a member function result_array() on a non-object
只是出於好奇,在哪裏我做錯了什麼? 是我寫錯了,還是Active Record的結果數據結構不一樣?
「因爲當我在活動記錄又試了一次,而不選擇這一領域
LEFT(question.question, 50) as question
它工作但它並沒有給我想要的領域。你們知道爲什麼嗎?
我想它和它的工作!我通常忽略第二個參數。這解釋了爲什麼當我使用複合選擇查詢時Active Record大多不起作用。所以這畢竟只是我的錯。非常感謝@MKhalidJunaid! – NashguL