一、php事務處理概述:
事務:是若干事件的集合
事務處理:當所有事件執行成功,事務才執行;若有任何一個事件不能成功執行,事務的其它事件也不被執行。
只要你的MySQL版本支持BDB或InnoDB表類型,那麼你的MySQL就具有事務處理的能力。這裡面,又以InnoDB表類型用的最多,雖然後來發生了諸如Oracle收購InnoDB等令MySQL不爽的事情,但是這類商業事件與技術無關,下面就以InnoDB表類型為例簡單說一下MySQL中的事務處理。
二、php事務處理代碼:
<?php try{ $pdo=new PDO("mysql:host=localhost;dbname=psp","root",""); $pdo->exec("set names utf8"); $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);//設置異常處理模式 $pdo->setAttribute(PDO::ATTR_AUTOCOMMIT,0);//關閉自動提交 }catch(PDOException $e){ echo "數據庫連接失敗"; exit; } try{ $age=10; $pdo->beginTransaction();//開始事務 $affected_rows1=$pdo->exec("update kfry set k_age=k_age+{$age} where k_name='user1'"); $affected_rows2=$pdo->exec("update kfry set k_age=k_age-{$age} where k_name='user2'");//隨意更改使之執行成功或失敗 /* if($affected_rows1&&$affected_rows2) { $pdo->commit(); echo "操作成功"; }else{ $pdo->rollback(); } */ if(!$affected_rows1) throw new PDOException("加入錯誤"); if(!$affected_rows2) throw new PDOException("減少錯誤"); echo "操作成功"; $pdo->commit();//如果執行到此處前面兩個更新sql語句執行成功,整個事務執行成功 }catch(PDOException $e){ echo "操作失敗:".$e->getMessage(); $pdo->rollback();//執行事務中的語句出了問題,整個事務全部撤銷 } $pdo->setAttribute(PDO::ATTR_AUTOCOMMIT,1); //測試是否成功 echo "\n操作結果為:\n"; $sql="select * from kfry"; $result=$pdo->query($sql); foreach($result as $v) { echo $v['k_name']." ".$v['k_age']."\n"; } ?>
EC中有事務處理,PHP怎麼實現這個還真沒研究過,回家研究研究再告訴你
第一階段第一講,WEB基礎 1.1 網站基本知識;1.2 網絡協議介紹; 1.3 B/S與C/S結構的區別;1.4 WEB編程、網站開發技術介紹。 第二講,網頁設計 2.1 Dreamweaver介紹及使用;2.2 靜態網頁HTML語言; 2.3 標題與段落,換行與分割線;2.4 表格、表單;2.5 框架、超鏈接、圖片。 實例:1,使用表格進行網頁布局設計; 2,使用表單、表格、框架進行系統後台界面設計。第三講,DIV+CSS 3.1 CSS的概念及基本語法;3.2 用CSS設置豐富的文字效果設置圖片效果; 3.3 用CSS設置表格與表單的樣式,用CSS設置頁面和浏覽器的元素;3.4 CSS盒模型;3.7 CSS+DIV布局,CSS+DIV美化與布局實戰。 實例:1,使用DIV+CSS設計按鈕及Tab; 2,使用DIV+CSS設計導航菜單;3,使用DIV+CSS設計論壇網頁;4,使用DIV+CSS設計博客網頁。第四講,PHP開發環境 4.1 集成開發環境XAMPP安裝;4.2 Zend Studio的安裝、配置; 4.3 Eclipse PDT的安裝與配置;4.4 編寫第一個PHP程序;4.5 調試PHP程序。 第五講,PHP編程基礎 5.1 PHP語言特性與發展趨勢;5.2 PHP變量常量數據類型; 5.3 PHP運算符與表達式;5.4 PHP流程控制語句;5.5 PHP函數。 第六講,MySQL開發基礎 6.1 MySQL數據庫系統介紹及安裝;6.2 MySQL數據類型介紹; 6.3 MySQL表的創建、修改與刪除;6.4 MySQL查詢語句;6.5 PHP MySQL函數使用詳解。 實例:1,論壇數據庫表設計; 2,PHP連接MySQL數據庫,實現增刪改查。第七講,Web2.0開發技術Ajax 7.1 JavaScript介紹;7.2 JavaScript語法基礎; 7.3 DOM對象基礎及事件;7.4 Ajax核心對象XMLHttpRequest詳解;7.5 Ajax異步通信原理;7.6 開發Ajax應用;7.6 Ajax框架jQuery介紹及使用。 實例:1,Tab的動態切換效果; 2,論壇系統中使用Ajax方式驗證用戶名是否被注冊;3,論壇系統中通過Ajax方式獲取用戶信息。第八講,PHP Web2.0網站實例開發 8.1 Web2.0風格的論壇系統開發;8.2 Web2.0風格的博客系統實戰開發。 實例:1,綜合DIV+CSS +PHP+MySQL+Ajax技術開發論壇; 2,綜合DIV+CSS +PHP+MySQL+Ajax技術開發博客系統。 第二階段第一講,PHP面向對象基礎 1.1 面向對象編程介紹;1.2 面向過程與面向對象的區別; 1.3 面向對象的基本特性;1.4 類、屬性和方法;1.5 構造函數;1.6 類的實例化;1.7 使用類的屬性和方法;1.8 類的訪問控制;1.9 類的繼承與多態;1.10 面向對象的接口及抽象類;1.11 類、對象及對象之間的關系;1.12 幾個常見的運算符和關鍵字。 實例:1,購物車對象關系設計; 2,班級、學生、課程、考試對象關系設計。第二講,PHP模板技術Smarty框架 2.1 Smarty模板技術介紹;2.2 Smarty安裝與配置; 2.3 Smarty 變量與變量修飾符;2.4 Smarty分支結構;2.5 Smarty循環......余下全文>>