我正在使用Codeigniter将一些数据插入MySQL表中。但是,自动添加的单引号会让我遇到'p' => 'POINT(1 1)'
的问题,因为这会导致生成的SQL查询为'POINT(1,1)'
而不是POINT(1,1)
。如果我传递false
第二个参数,则将从生成的SQL查询中删除所有单引号。我该如何处理这个问题?
PHP代码
$data = array( 'lat' => $url['lat'],
'lng' => $url['lng'],
'p' => 'POINT(1 1)'
);
$this->db->insert('listings', $data);
答案 0 :(得分:0)
尝试做类似
的事情$this->db->set(array(
'lat' => $url['lat'],
'lng' => $url['lng'],
), true);
$this->db->set(array(
'p' => 'POINT(1 1)'
), false);
$this->db->insert("listings");
第二个参数将确保不转义该值。
很抱歉,如果我的回答有误,我不使用Codeigniter
答案 1 :(得分:-1)
请试试这个
$geo_cordinates = "GeomFromText('POINT(18.025600 72.251500)',0)";
$sql = "Insert into `tablename` (`geo_cordinates`) values ($geo_cordinates)";
$this->db->query($sql);
这对我有用。希望对你也有用。