【发布时间】:2014-04-06 13:23:48
【问题描述】:
我正在尝试执行不同的 sql 语句以防用户提交搜索表单。 我正在尝试使用下面的代码,但我遇到了一个错误,我不明白为什么,因为代码对我来说似乎很不错。
您在此处看到可能导致这些错误的原因吗?
我遇到的错误:
在 $readNews->bindParam 中的非对象上调用成员函数 bindParam()
注意:未定义变量:$readNews->bindParam(':begin', begin, PDO::PARAM_INT); 中的 readNews;
致命错误:在非对象上调用成员函数 bindParam() F:\Xampp\htdocs\projeto\admin\posts\noticias.php 在第 53 行
我的代码:
$pag = (empty($_GET['pag']) ? '1' : $_GET['pag']);
$maximo = 5;
$begin = ($pag * $max) - $max;
if (isset($_POST['search']))
{
$search = $_POST['search'];
if(!empty($search) && $search != 'Title:')
{
$readNews = $pdo->prepare("SELECT * FROM news WHERE title LIKE CONCAT('%', :search, '%') ORDER BY data DESC LIMIT :begin, :max");
$readNews->bindParam(':search', $search);
}
}
else
{
$readNews = $pdo->prepare('SELECT * FROM news ORDER BY data DESC LIMIT :begin, :max');
}
$readNews->bindParam(':begin', begin, PDO::PARAM_INT);
$readNews->bindParam(':max', $max, PDO::PARAM_INT);
$readNews->execute();
$resultReadNews = $readNews->rowCount();
【问题讨论】:
-
如果你的代码缩进得当,问题就很明显了。