CodeIgniterを習得しましたが、純粋なphpクエリをCodeIgniterに変換するのが困難でした。CodeIgniterでクエリを修正するにはどうすればよいですか?
Codeigniterを使用したこのクエリ
public function get_kal($id) {
$query = $this->db
->select("myname as name")
->from("mytable")
->where("myname", $id)
->like("%%%s%%")
->order_by("myname","ASC");
->get("q");
$arr = array();
$rs = mysql_query($query);
while($obj = mysql_fetch_object($rs))
{
$arr[] = $obj;
}
echo json_encode($arr);
}
純粋なphpを使用したこのクエリ
public function get_name($id) {
$query = sprintf("SELECT myname as name from mytable WHERE myname LIKE "%%%s%%" ORDER BY myname DESC ", mysql_real_escape_string($_GET["q"]));
$arr = array();
$rs = mysql_query($query);
while($obj = mysql_fetch_object($rs))
{
$arr[] = $obj;
}
echo json_encode($arr);
}
回答:
回答№1は1を使用して直接クエリできます
$this->db->query("YOUR QUERY HERE");
クエリを作成することもできます
$query = $this->db
->select("myname as name")
->from("mytable")
->like("myname", $this->input->get("q", TRUE))
->order_by("myname","ASC");
ここには 公式文書
回答№2の場合は0
$query = $this->db->query($SQL);
echo json_encode($query->result_array());
回答№3の場合は0
以下の形式でも使用できます。
1.複数の結果
2.単一の結果
1. $q = $this->db->query("MYSQL QUERY");
echo json_encode($q->result_array());
2.$q = $this->db->query("MYSQL QUERY");
echo json_encode($q->row_array());