2017-04-11 79 views
2

我想将函数get_path()调入select子句(函数get_all_lelang()),但我不知道如何编写它。你可以帮我吗?将参数传递给select子句Codeigniter

这是我的代码。

public function get_path($kode_lelang){ 
    $result = $this->db->query("select gambar as gbr from proyek_pertanian NATURAL join lelang where kode_lelang='".$kode_lelang."'")->row_array(); 
    $path = 'http://localhost/sikonsorsium/'.$result['gbr']; 

    $type = pathinfo($path, PATHINFO_EXTENSION); 
    $data = file_get_contents($path); 
    $base64 = 'data:image/' . $type . ';base64,' . base64_encode($data); 
    return $base64; 
} 

public function get_all_lelang(){ 
    $sql = "SELECT ".$get_path(."lelang.kode_lelang".)." as binImg, member.* 

    FROM `lelang` 
    LEFT JOIN `member` ON `lelang`.`id_member` = `member`.`id_member` 
    JOIN `proyek_pertanian` ON `lelang`.`kode_proyek` = `proyek_pertanian`.`kode_proyek` "; 

    $query = $this->db->query($sql); 
    return $query->result(); 

} 

[编辑]我想这个

public function get_all_lelang(){ 
    $sql = "SELECT '".$this->get_path("lelang.kode_lelang")."' as binImg, member.* 

    FROM `lelang` 
    LEFT JOIN `member` ON `lelang`.`id_member` = `member`.`id_member` 
    JOIN `proyek_pertanian` ON `lelang`.`kode_proyek` = `proyek_pertanian`.`kode_proyek` "; 

    $query = $this->db->query($sql); 
    return $query->result(); 

} 

但它返回不同的值,错误值。请检查binImg值。

(错误)

"kode_lelang":"LLG-20160616-183314","binImg":"data:image\/;base64,PCFET0NUWVBFIGh0bWw+Cgo8aHRt 

(右)

"kode_lelang":"LLG-20160616-183314","binImg":"data:image\/jpg;base64,\/9j\/4AAQSkZJRgABAQAAAQABAAD\/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQ 

请帮助。谢谢:)

回答

1

你需要小幅盘整,

变化

$get_path(."lelang.kode_lelang".) 

$this->get_path("lelang.kode_lelang") 
+1

哇它的作品!谢谢你:D – Florentina

+0

嘿,我已经意识到它根本不起作用。它返回不同的价值。 我不知道为什么。请在控制器中看到我的编辑 – Florentina

+0

它应该工作,您的语法'$ get_path(。“lelang.kode_lelang”。)'不正确,'$ this-> get_path(“lelang.kode_lelang”)'是调用的方式方法里面的类 –