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。r1FROM(emlakilan、emlakilan)INNER JOIN semtlerON INNER JOIN emlaktipON INNER JOIN emlakdurumON LEFT JOIN resimON WHERE 0IS NULLORDERBY emlakilan。iddesc LIMIT 4
ファイル名:C:\ Program Files \ EasyPHP-12.1 \ www \ 3burcak \ system \ database \ DB_driver.php
行番号:330
手伝ってくれてありがとう。