php更新mysql后获取影响的行数发生异常解决方法

yipeiwu_com6年前Mysql基础
从manual上知道了mysql_affected_rows函数当UPDATE前后的数据一样时会返回异常值,

下面有个方便的解决办法,从官方munual上看到 bdobrica at gmail dot com 留言的:
As a solution to the problem pointed in the post reffering to mysql_affected_rows() returning 0 when you are making an update query and the fields are not modified although the query is valid, i'm posting the following function. It is very simple and based on a previous post.
复制代码 代码如下:

function mysql_modified_rows () {
$info_str = mysql_info();
$a_rows = mysql_affected_rows();
ereg("Rows matched: ([0-9]*)", $info_str, $r_matched);
return ($a_rows < 1)?($r_matched[1]?$r_matched[1]:0):$a_rows;
}

PS:因为这个小问题折腾了半天,感觉php真是太不清晰了

相关文章

PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID

前言 最近在工作中又遇到了这个问题,PHP中如何获得刚插入数据的ID(或当前发布文章的ID)呢?觉得有必要整理下详细的解决方法,方便自己也给有需要的朋友们提供以帮助,那么话不多说了,来看...

PHP开发者常犯的10个MySQL错误更正剖析

1.使用MyISAM而不是InnoDB   完全错误,反驳理由:   首先原文说MyISAM是默认使用的,而实际上到了MySQL 5.5.x,InnoDB已经成为了默认的表引擎。   另...

PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例

本文实例讲述了PHP封装mysqli基于面向对象的mysql数据库操作与用法。分享给大家供大家参考,具体如下: 首先封装好mysql类 mysql.php <?php...

php并发对MYSQL造成压力的解决方法

PHP页面有一个浏览量统计每秒有200并发,造成insert给mysql造成很大压力 lnmp环境,其他页面内容都做了缓存了,没有多大的负载,就是这个浏览量统计功能,给mysql带来不小...

PHP实现的mysql主从数据库状态检测功能示例

本文实例讲述了PHP实现的mysql主从数据库状态检测功能。分享给大家供大家参考,具体如下: 实例: <?php /** * 检测多个主从数据库是否挂掉 * 建立从...