
正文
php中数据库错误打印 php输出数据库
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
php能不能像java那样打印错误堆栈信息到错误日志
PHP 确实不会输出错误堆栈,但通过函数,还是能够获取到错误堆栈的。
function getBacktrace() {
ob_start();
debug_print_backtrace();
return ob_get_clean();
}
调用上面这个函数取得错误堆栈,再用 file_put_contents('log_path', FILE_APPEND); 写入日志文件即可。
还有一个办法:为 PHP 安装 xdebug 扩展
windows 下的安装方法 安装好后,修改 php.ini
相关问答
Q1: 怎么让php打印错误日志?
(1)使用echo php中数据库错误打印,简单输出
(2)使用print_r(),可以有规则php中数据库错误打印的打印复杂结构
(3)var_dump递归输出某种结构体
(4)print(),简单打印
可以将php中数据库错误打印你要输出的错误内容放到上述语句或函数内进行打印输出;也可以写入某个文件,作为你的Log日志:file_put_contents('/test1.txt',$value['value'],FILE_APPEND)等这类文件函数
以上是我自己工作中总结的PHP调试方法,挺好用的。
Q2: php 操作数据库的问题,打印的值显示都正常,就是更改不了?
建议在10行(sqlsrv_query)后面增加下面的语句:
if( $data === false ) {
echo $sql;
die( print_r( sqlsrv_errors(), true));
}
主要是查看SQL查询是否执行成功,另外也可以把echo $sql放在执行前,当需要修改的数据不存在(0条修改)的时候sqlsrv_query执行会成功。
Q3: php程序访问mysql查询结果为空,但是把sql打印出来,可以直接查询出结果,这是什么原因才会发生的问题?
数据库操作异常,你把操作数据库的连接输出来,看看有没错误
Q4: php sql 输出错误
我看了你的页面,你输出没有内容,可能是SQL没有找到记录,你的程序是对的。
但是给你的程序提个建议,我们必须在每一步之后检测程序执行结果,我把你的程序修改为:
?php
include 'db.php';//保存数据库信息的
$query="SELECT * FROM word WHERE id='$p'";
$db = mysql_connect($dbserver,$dbid,$dbpassword);//数据库联接
if ($db){
if (mysql_select_db($dbname,$db)){
$result = mysql_query($query,$db);//sql查找
if ($result){
$myrow = mysql_fetch_row($result);//存入数组
if ($myrow) printf("%s",$myrow[1]);//输出标题
else echo "没有找到ID为 $p 的数据记录!";
mysql_free_result($result);
}else echo "执行SQL语句[$query]失败,错误:".mysql_error();
}else echo "数据库 $dbname 不存在!";
}else echo "数据库连接失败!";
echo "br/";
?
关于php中数据库错误打印和php输出数据库的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







