}
/*
+ */
function query2a($sql) {
$r = $this->conn->query($sql,PDO::FETCH_COLUMN);
return $r ? $r->fetch() : $r;
return $this->conn->query($sql,PDO::FETCH_ASSOC);
}
- */
function quote($v) {
return $this->conn->quote($v);
}
if ($this->db->type =='mysql') {
$query = $this->db->conn->query('SELECT FOUND_ROWS()');
} else {
- $query = $this->db->conn->query("SELECT count(*)".preg_replace('/^SELECT .*?FROM/',' FROM',$sql));
- #$query = $this->db->conn->query("SELECT count(*) FROM ($sql) count");
+ $sql_count = preg_replace('/^SELECT .*?FROM/s','SELECT count(*) FROM',$sql);
+ $sql_count = preg_replace('/ (ORDER|LIMIT) .*?$/s','',$sql_count);
+ $query = $this->db->conn->query($sql_count);
}
+
if (!$query) {
$err = $this->db->conn->errorInfo();
$err[] = $sql;
err(join(' | ',$err));
return $err[0];
}
+
$tot = $query->fetch(PDO::FETCH_COLUMN);
$opt['tot'] = $tot;
#if (!$tot) return;