SQLコードをアクティブレコードに変更してみます。元のコードとアクティブレコードを試してみてください。そしてエラーメッセージ。どこが間違っているのか教えてください。ありがとう。
SELECT `emlakilan`.`id`, `emlakdurum`.`durum`,`emlaktip`.`tip`,`semtler`.`semt`,`emlakilan`.`fiyat`,`emlakilan`.`tarih`,`resim`.`r1` FROM ucburcak.`emlakilan`
INNER JOIN `semtler` ON `emlakilan`.`semtId` = `semtler`.`semtid`
INNER JOIN `emlaktip` ON `emlakilan`.`emlakTipId` = `emlaktip`.`id`
INNER JOIN `emlakdurum` ON `emlakilan`.`emlakDurumId` =`emlakdurum`.`id`
LEFT JOIN `resim` ON `emlakilan`.`resimId` = `resim`.`id`
WHERE `emlakdurumId`=3 ORDER BY `emlakilan`.`id` DESC LIMIT 4;
//そしてここでアクティブレコード機能
public function kucuk_ilan($durum ='3') // $durum:1=>tümü 2=>kiralık 3=>satılık 4=>takas
{
$query = $this->db->select('emlakilan.id, emlakdurum.durum, emlaktip.tip, semtler.semt, emlakilan.fiyat, emlakilan.tarih, resim.r1')
->from('emlakilan')
->join('semtler','emlakilan.semtId' === 'semtler.semtid','inner')
->join('emlaktip','emlakilan.emlakTipId'==='emlaktip.id','inner')
->join('emlakdurum','emlakilan.emlakDurumId'==='emlakdurum.id','inner')
->join('resim','emlakilan.resimId'==='resim.id','left')
->where('emlakdurumId'===$durum)
->order_by('emlakilan.id','desc')
->limit(4);
$query = $this->db->get('emlakilan');
return $query->result_array();
}
そして、エラーメッセージ:
エラー番号:1066
一意ではないテーブル/エイリアス:'emlakilan'
SELECT emlakilan
。id
、emlakdurum
。durum
、emlaktip
。tip
、semtler
。semt
、emlakilan
。fiyat
、emlakilan
。tarih
、resim
。r1
FROM(emlakilan
、emlakilan
)INNER JOIN semtler
ON INNER JOIN emlaktip
ON INNER JOIN emlakdurum
ON LEFT JOIN resim
ON WHERE 0
IS NULLORDERBY emlakilan
。id
desc LIMIT 4
ファイル名:C:\ Program Files \ EasyPHP-12.1 \ www \ 3burcak \ system \ database \ DB_driver.php
行番号:330
手伝ってくれてありがとう。