ThinkPHP 2053错误
这个报错是调用存储过程的时候产生的,用的是5.1的代码是根据官方文档写的,我怀疑5.0也有这个问题。去官方查了一下发现不少人有这个问题,但是官方都没有回应过,只能自己动手一步步调了。
$center = input('c',1);
$outParam = null;
$data = Db::query('call get_day(:in_param2)',[
'in_param2' => [&$center, \PDO::PARAM_INT],
]);
注意这里的变量要用引用的方式
TP5.1 报错 SQLSTATE[HY000]: General error: 2053
原因:
在 \thinkphp\library\think\db\Connection.php 里面有这么一个获取存储过程结果的函数
/**
* 获得存储过程数据集
* @access protected
* @return array
*/
protected function procedure()
{
$item = []; do {
$result = $this->getResult();
if ($result) {
$item[] = $result;
}
} while ($this->PDOStatement->nextRowset()); $this->numRows = count($item); return $item;
}
我打印出来
$this->getResult();
返回的结果集就是一个,但是这里又判断循环是否下一行,我怀疑就是这里出错了。把这里获取结果集直接返回就可以了
/**
* 获得存储过程数据集
* @access protected
* @return array
*/
protected function procedure()
{
$result = $this->getResult(); $this->numRows = count($result); return $result;
}
ThinkPHP 2053错误的更多相关文章
- thinkphp 支付宝错误 Class 'Think' not found
Class 'Think' not found D:\www\DonatePlatform\ThinkPHP\Extend\Vendor\alipay\lib\alipay_submit.class. ...
- ThinkPHP自定义错误页面、成功页面及异常页面
为什么会选择 ThinkPHP 呢?首先,作为一款国产PHP框架,文档肯定比国外那些框架要丰富的多,而且容易看懂:其次,ThinkPHP已经发展了七八年的时间了,相对来说已经比较成熟了:当然,最重要的 ...
- thinkphp 定制错误页面
在前台配置文件里加上: 'TMPL_EXCEPTION_FILE' => '.Public/tpl/error.html',// 异常cuowu页面的模板文件 然后在Public下新建一个tpl ...
- Nginx 下无法读取session 导致 thinkphp验证码错误
打开php配置文件 php.ini 使用搜索命令 whereis php.ini 一般在:/etc/php.ini 目录下 使用vim命令打开 找到: session.save_path 找到php保 ...
- lnmp下thinkphp 500错误指南
先在php.ini打开报错,display_errors: on: 如果是open_basedir的问题,修改nginx的配置文件fastcgi.conf 将fastcgi_param PHP_ADM ...
- 【PHP ThinkPHP框架】小bug汇总[更新]
目录结构 1.函数调用 2.绑定select下拉框数据 3.PHP查询功能 4.格式化时间和价钱 5.IF标签比较两个变量 6.eq标签比较两个变量 7.新增信息或者修改信息的自动验证和自动填充 8. ...
- thinkphp-许愿墙-3
用jquery写异步传递的时候, 首先要判断表单中的输入是否为空: 如果有多个输入项, 应该, 分别的, 一步一步的来判断是否为空, 而不是用 and / or来复合判断! 同时如果为空, 应该将它设 ...
- 给ThinkPHP5增加验证码功能
就在这几天,TP5进行的RC3的大规模更新,虽然我们都狠狠地骂了一百遍,但是我的内心是无比的激动,TP终于走上了"上流社会"的模式:composer! 为什么说composer是上 ...
- 重装Win10系统的非常简单的操作教程
这是回到学校的第二天,准备搞一份实习证明,然而宿舍宽带停了,于是我来到了社团办公室,打开了其中一台电脑. 各位师弟师妹...你们也太厉害,把电脑折腾成这样...电脑装了各种各样的工具, Adobe P ...
随机推荐
- Jetson TX1 SD card启动
上网DNS /var/run/NetworkManager/resolv.conf nameserver 211.100.225.34 nameserver 219.239.26.42
- luogu3687-[ZJOI2017] 仙人掌
Description P3687 [ZJOI2017]仙人掌 - 洛谷 | 计算机科学教育新生态 Solution 我们先考虑只有一棵树如何处理. 仙人掌可以看做若干环的集合. 特别的, 对于一条没 ...
- Fedora 24系统基本命令
Fedora 24基本命令 一. DNF软件管理 1. 修改配置:在/etc/dnf/dnf.conf中加入fastestmirror=true.keepcache=true ...
- JS 基础知识点
最近发现一个好东西,掘金小册,觉得里面的东西挺不错的,准备仔细阅读一下,提升下自己. 记录一下,随便加深点儿印象,主要内容源自于小册. 原始类型 原始类型也成为基本数据类型 boolean null ...
- postgresSQL 实现数据修改后,自动更新updated_date/ts等字段
1. 需求说明: 实现MYSQL中有on update CURRENT_TIMESTAMP 2. 需求分析 由于数据库迁移需要将MYSQL中的数据迁移到postgresSQL中,由于MYSQL中有on ...
- MongoDB官网配置项目整理
MongoDB的配置文件共有10个项目: systemLog:processManagement:net:security:storage:operationProfiling:replication ...
- luogu5290 春节十二响
题目链接 思路 先考虑一条链的情况怎么做. 因为只有两个子树,并且两个子树都是链.所以可以把这两条链找出来,然后\(sort\)一下.合并起来. 然后推广到树上 对于每一棵树都可以按照和上面同样的方法 ...
- Python之file
读写文件 代码: #读写文件str = """i love China!!i hope everyone save"""#打开并书写文件f ...
- unittest 框架-待优化
模块1 :getdata.py 读取测试用例test_case.xlsx,返回测试用例结果 import json from openpyxl import load_workbook class D ...
- Linux安装Oracle JDK替换OpenJDK详解
转自http://www.lsychina.com/howto_install_oracle-jdk_replace_openjdk_on_linux.html 众所周知,由于Oracle公司的JDK ...