Parameter 2 to mysqli_stmt::bind_param() expected to be a reference
来源:互联网 发布:查股网ddx日线数据 编辑:程序博客网 时间:2024/06/04 22:48
今天在用brophp(是lamp兄弟连里的一个框架),写程序的时候,老是报一个错误,具体情况是这样的
运行时警告[在文件 H:\aphp\BroPHPTest\brophp\bases\dmysqli.class.php 中,第 75 行]:Parameter 2 to mysqli_stmt::bind_param() expected to be a reference, value given
SQL ERROR: [0] No data supplied for parameters in prepared statement
这个是它提示的错误,按照提示,找到dmysqli.class.php的75行。它的代码是
换成
然后,在这个文件里的其它地方,添加上这段代码
根据最后的这个函数,觉得这个应该和php的版本有关,所以暂时记录下吧。
- if(emptyempty($_GET['id'])) $this->error('数据不存在');
- $c = D('news');
- $id = $_GET['id'];
- $num = $c->total();
- $page = new Page($num,10);
- $data = $c->where(array('categoryid'=>$id))->limit($page->limit)->select();
- /*问题就出在这个地方了,我加了这个where条件,它就报错,如果不加,就正常,而且在报错的时候 调试信息里打印的时候sql语句,我在phpmyadmin里执行了下,也正常,可以查到数据,也就是说sql语句是没有问题的,后来在论坛里找到了方法与原因,看下面*/
- $this->assign('p',$page->fpage());
- $this->assign('data',$data);
- //P($da);
- $this->display('index/nlist');
运行时警告[在文件 H:\aphp\BroPHPTest\brophp\bases\dmysqli.class.php 中,第 75 行]:Parameter 2 to mysqli_stmt::bind_param() expected to be a reference, value given
SQL ERROR: [0] No data supplied for parameters in prepared statement
这个是它提示的错误,按照提示,找到dmysqli.class.php的75行。它的代码是
- call_user_func_array(array($stmt, 'bind_param'),$value);
换成
- call_user_func_array(array($stmt, 'bind_param'), self::refValues($value));
然后,在这个文件里的其它地方,添加上这段代码
- function refValues($arr){
- if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
- $refs = array();
- foreach($arr as $key => $value)
- $refs[$key] = &$arr[$key];
- return $refs;
- }
- return $arr;
- }
根据最后的这个函数,觉得这个应该和php的版本有关,所以暂时记录下吧。
1 0
- Parameter 2 to mysqli_stmt::bind_param() expected to be a reference
- selenium:expected [object undefined] undefined to be a string
- to be a janitor(2)
- 【ERROR_2】Call to a member function bind_param() on a non-object
- mysqli::stmt报Fatal error: Call to a member function bind_param() on a non-object in ...
- To be a programmer
- To Be A Master
- To be a Phoenix
- To be a man
- To be a sun
- To be a janitor
- 【Robotframework】WebDriverException: Message: Expected [object Undefined] undefined to be a string
- To be a better man
- To be a good programmer
- how to be a man
- to be a better man
- To be a better man
- To be a Java Architect
- 取Oracle中实现TOP N,选取前几条记录
- 每天一个小算法(matlab armijo)
- Android中的Handler, Looper, MessageQueue和Thread
- 题目1069:查找学生信息 题目18
- 摄氏温度换算为华氏温度
- Parameter 2 to mysqli_stmt::bind_param() expected to be a reference
- 关于linux下使用动态库
- 【BZOJ】【P1468】【Tree】【题解】【点分治】
- 《深入理解计算机网络》学习笔记
- SAE中使用TmpFS功能
- 什么是可重入函数
- SAE虽然禁止了IO写操作,但是并没有禁止fwrite,file_put_contents等写操作函数
- la 3983 捡垃圾的机器人 dp 单调队列优化 典型 难
- Memcache的容量设置