PDO错误调试
在服务器上用PDO操作数据库,怎么都获取不到数据,query语句返回null,但是同样的代码在本地运行无误。SO,开始找bug。
<?php
$host='localhost';
$dbname='my';
$user="root";
$password="root";
$dsn="mysql:host=$host;dbname=$dbname";
try{
$pdo=new PDO($dsn,$user,$password,array(PDO::MYSQL_ATTR_INIT_COMMAND=>"SET NAMES 'utf8';"));
}catch(PDOException $e){
die("错误:".$e->getMessage());
} // $sql="select title,descript,picUrl,url from aa";
$sql="select * from aa";
$res=$pdo->query($sql);
if($res==null){
show($pdo->errorInfo());
}
输出:
Array
(
[0] => 42S02
[1] => 1146
[2] => Table 'my.aa' doesn't exist
)
够傻吧,我只在本地数据库上建表了,完全忘了和服务器数据库不是一回事。
总结两个知识点:
1、$res=$pdo->query($sql); 成功的话返回一个PDOStatement对象,失败返回空。
2、$pdo->errorInfo()获取错误信息。输出一个数组。
3、调试过程中遇到了这个错误提示:Notice: Array to string conversion in /var/www/html/wx/test.php on line 17
原因是$pdo->errorInfo()返回的是一个数组,而我试图用echo输出结果,改用print_r()或var_dump()打印数组就OK了。
PDO错误调试的更多相关文章
- 【转】段错误调试神器 - Core Dump详解
from:http://www.embeddedlinux.org.cn/html/jishuzixun/201307/08-2594.html 段错误调试神器 - Core Dump详解 来源:互联 ...
- 转 Python3 错误和异常/ Python学习之错误调试和测试
########sample 0 https://www.cnblogs.com/Simon-xm/p/4073028.html except: #捕获所有异常 except: <异常名> ...
- PHP中PDO错误/异常(PDOException)处理
PDO 提供了三种不同的错误处理模式,以满足不同风格的应用开发: PDO::ERRMODE_SILENT 此为默认模式. PDO 将只简单地设置错误码,可使用 PDO::errorCode() 和 P ...
- PDO 错误处理模式
异常模式: $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 这个模式需要配合 try 使用 :一旦出错,就会: 1. ...
- PHP PDO 错误与错误处理
PDO::ERRMODE_SILENT 此为默认模式. PDO 将只简单地设置错误码,可使用 PDO::errorCode() 和 PDO::errorInfo() 方法来检查语句和数据库对象.如果错 ...
- iOS 内存错误调试(EXC_BAD_ACCESS)
内存错误crash现场: Thread堆栈: 有可能是访问被释放对象造成,根据现场并不能找到具体哪个对象出现内存错误. 1.开启僵尸对象调试 Edit Scheme->Debug->Dia ...
- Linux的段错误调试方法
linux段错误的调试方法 相关博文: http://blog.csdn.net/htianlong/article/details/7439030 http://www.cnblogs.com/pa ...
- 段错误调试神器 - Core Dump详解
一.前言: 有的程序可以通过编译, 但在运行时会出现Segment fault(段错误). 这通常都是指针错误引起的. 但这不像编译错误一样会提示到文件某一行, 而是没有任何信息, 使得我们的调试变得 ...
- 极度郁闷的错误调试——ajax jquery
今天在写一个简单邮件验证的页面时,本来以为二十分钟的事情,却调试了一个半小时,简直郁闷,具体的错误如下: 在页面中,有一段如下的代码: <td colspan="3"> ...
随机推荐
- 管理 MariaDB 用户账户
哪些用户可以连接到MariaDB 服务器,他们都可以从哪些地方连接,连接到服务器后又能够做什么等,都是本文将涉及到的内容. 用户的权限信息都保存在 mysql 库中的几个权限表中.对 MariaDB ...
- 【Java】Java中BigDecimal的基本运算
BigDecimal一共有4个够造方法,让来看看其中比较常用的两种用法: 第一种:BigDecimal(double val)Translates a double into a BigDecimal ...
- uImage和zImage的区别
1.各种文件的意义 vmlinux 编译出来的最原始的内核文件,未压缩. zImage 是vmlinux经过gzip压缩后的文件. bzImage bz表示“big zImage”,不是用bzi ...
- ABP Zero示例项目问题总结
1.ABP Zero项目,登录时出现如图“Empty or invalid anti forgery header token.”错误提示 ABP Zero项目,登录时出现如图“Empty or in ...
- Android基础_Service
一.service的用途 1.1 一种是执行长时间运行的耗时操做 1.如网络下载.音乐播放2.文件系统监控等 1.2 另一种是负责组件间的交互 1.将某些功能以Service组件形式封装,然后提供给其 ...
- JavaScript 数组对象的去重
JavaScript数组去重 1.原型去重法.通过prototype找到数组的源性对象Array,在数组的原型上添加unique()方法.需要使用的时候使用 点 " . " 进行连 ...
- msfvenom向apk注入payload
首先安装apt-get install apkinjector 这个东西,msfvenom重新组装apk的时候会自动调用 msfvenom -x /路径/apk android/meterpreter ...
- 安装myeclipse后,打开时弹出:“该站点安全证书的吊销证书不可用”,怎样解决?
1.当弹出"该站点安全证书的吊销信息不可用.是否继续?"的对话框时,点击"查看证书",切换到"详细信息"TAB页,找到其"CRL分 ...
- JAVA获取客户端IP地址和MAC地址
1.获取客户端IP地址 public String getIp(HttpServletRequest request) throws Exception { String ip = request.g ...
- 01-01_环境准备_pyenv
本文重点: 了解pyenv pyenv下载及安装 pyenv 使用 安装ipython 一.了解pyenv 经常遇到这样的情况: 系统自带的 Python 是 2.6,自己需要 Python 2.7 ...