PHP数据库事务处理
在使用php中使用数据库事务处理并不复杂,主要用到的是mysqli类的3个成员函数。
(1)autocommit(bool mode),设置数据库自动提交状态。当mode为TRUE时,打开自动提交设置,当mode为FASLE时,关闭自动设置。所谓自动提交,就是MYSQL每执行一条SQL语句,该SQL语句的执行结果马上生效。而非自动提交时,则执行结果要一直到commit()语句被执行时生效,或者到rollback()语句被执行时执行结果被取消,数据库回复到当前事务之前的状态。另外,本函数只影响当前数据库连接间发生的数据库操作,即在一下一数据库连接建立之后,自动提交状态将复成Mysql数据库内部的设置。
(2)commit(),提交当前事务的执行结果。
(3)rollback(),取消当前事务的执行结果。
PHP中使用事务处理的代码框架如下所示:
<?php
$conn=db_connect();//连接数据库该函数为另外定义的。
$conn->autocommit(FALSE);
$rsl = $conn->query($sql1);
$rs2 = $conn->query($sql2);
...
$rsn= $conn->query($sqln);
if($rs1&&$rs2&&...&$sqln)
$conn->commit();
else
$conn->rollback();
$conn->close();
?>
相关文档:
互联网的今天,AJAX已经不是什么陌生的词汇了。说起AJAX,可能会立即想起因RSS而兴起的XML。XML的解析,恐怕已经不是什么难题了,特别是PHP5,大量的XML解析器的涌现,如最轻量级的SimpleXML。不过对于AJAX来说,XML的解析更倾向于前台Javascript的支持度。我想所有解析过XML的人,都会因树和节点而头大。不可否认,X ......
以前一直搞C++进行C/S开发,曾经的想法是如果有机会,学学搞网站和嵌入式开发
没想到找到工作的第2天就有了做网站的机会,也赚到了自己大学期间最高的一份工资,10天1000块
在什么的都不会的情况下,尽然答应人事处的老师一个星期写好网站的后台
我承认找到工作后自己是有点狂了,很多事没注意到,很多事后悔不了。。。
......
Php Variable Circular References
Circular-references has been a long outstanding issue with PHP. They are
caused by the fact that PHP uses a reference counted memory allocation
mechanism for its internal variables. This causes problems for longer
running scripts (such as an Applicatio ......
摘要: 用正则实现包含某个字符串很容易,但如果实现不包含某个字符串呢?作者给出了一个解决方案。
判断一个字符串中是否含有另一字符串,php有很多方法,如下:
1. 常见函数
strstr($str, "abc");
strstr($str, "abc");
2. 正则匹配
preg_match("/(abc)/is", $str);
p ......
循环引用一直是PHP(应用)中一个突出的问题。问题的出现是由于这样的一个事实:PHP为php内部变量使用一个“引用计数器”内存分配机制。这一机制对一些相比来说较长时间运行的脚本(比如,应用服务器或者eZ测试组件)会引发问题,因为内存在脚本结束前事不会被释放掉的。但是,(几乎)没有人 ......