Fatal error: Cannot pass parameter 2 by reference in的原因及解决

使用pdo 的预处理连接数据库的时候报Fatal error: Cannot pass parameter 2 by reference in
原来的主要代码如下:
prepare(" select l.linkid,l.linkname,l.linkurl,l.isdisplay from myboblog_links l where l.isdisplay=:isdisplay order by l.linkorder limit 0,9");
$stmtLink->bindParam(':isdisplay',"1", PDO::PARAM_INT);
/*** execute the prepared statement ***/
$stmtLink->execute();
/*** fetch the results ***/
$resultLink = $stmtLink->fetchAll();


修改后的代码如下:
prepare(" select l.linkid,l.linkname,l.linkurl,l.isdisplay from myboblog_links l where l.isdisplay=:isdisplay order by l.linkorder limit 0,9");
$isdisplay = 1;
$stmtLink->bindParam(':isdisplay',$isdisplay , PDO::PARAM_INT);
/*** execute the prepared statement ***/
$stmtLink->execute();
/*** fetch the results ***/
$resultLink = $stmtLink->fetchAll();

原因:
php pdo prepare-Cannot-pass-parameter-2-by-reference
这个错误的意思是不能按引用传递第2个参数
出现这个错误的原因是bind_param()方法里的除表示数据类型的第一个参数外,
均需要用变量,而不能用直接量,因为其它参数都是按引用传递的

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年11月    »
123
45678910
11121314151617
18192021222324
252627282930
搜索
标签列表
网站分类
最新留言
    文章归档
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.闽ICP备11018667号-2