您好我正在构建我在YouTube上看到的Query类,但是我被卡住了。我的查询功能允许您使用高级SQL查询,如SELECT * FROM market LIMIT ? OFFSET ?
它绑定值,所以我找不到任何解决方案。有人帮忙吗?我该怎么办?
我的Query.php类包含
public function query($sql, $params = array())
{
$this->_error = false;
if ($this->_query = $this->db->prepare($sql))
{
$x = 1;
if (count($params))
{
foreach ($params as $param)
{
$this->_query->bindValue($x, $param);
$x++;
}
}
if ($this->_query->execute())
{
$this->_results = $this->_query->fetchAll(PDO::FETCH_OBJ);
$this->_count = $this->_query->rowCount();
} else {
$this->_error = true;
}
}
return $this;
}
在这里,我尝试从我的Query bellow中选择db中的项目
$i = 3;
$x = 100;
$sql = Query::getInstance()->query("SELECT * FROM market LIMIT ? OFFSET ?", array($i, $x));
var_dump($sql);
我没有在这里提供完整的源代码,我认为查询功能存在问题,但我无法找到它。
答案 0 :(得分:0)
感谢nogad, 我所做的只是在查询功能的开头设置:
$this->db->setAttribute( PDO::ATTR_EMULATE_PREPARES, false );