0

我真正想做的是创建一个可选文本以传递给 codeigniter 中的控制器方法。

目前我有这样的东西

public function manage($page = 1, $method = '', $id=0)
{
    //code
}

因此,如果参数未传递,则分页正常显示,如果是,则在视图中设置一些变量以向用户提供一些反馈。

但是,当我尝试时出现此错误:

http://domain.path/to/controller/method/1/test/1

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''1', 50' at line 5

SELECT CONCAT('so_',id,'_am'), value, updated, FROM words LIMIT '1', 50

因此,由于某种原因,该段似乎被转换为字符串,这导致了错误。

关于如何解决这个限制的任何想法?

4

1 回答 1

1

看起来您的查询生成器会自动在字符串周围添加引号。将 $page 显式转换为 int。

$page = "4";
$offset = "4";
$qb->setLimit((int)$page,(int)$offset)
于 2011-05-26T01:02:38.667 回答