How to use PHP & Access (odbc) and Transaction (odbc_autocommit,odbc_commit,odbc_rollback) This is tutorial php developers PHP and Microsoft Access Database on Transaction mode (odbc_autocommit,odbc_commit,odbc_rollback).
ShotDev Focus:
- PHP & Microsoft Access Transaction mode (odbc_autocommit,odbc_commit,odbc_rollback)
Example
php_access_transaction1.php
<html> <head> <title>ShotDev.Com Tutorial</title> </head> <body> <form action="php_access_transaction2.php" name="frmAdd" method="post"> <table width="600" border="1"> <tr> <th width="91"> <div align="center">CustomerID </div></th> <th width="160"> <div align="center">Name </div></th> <th width="198"> <div align="center">Email </div></th> <th width="97"> <div align="center">CountryCode </div></th> <th width="70"> <div align="center">Budget </div></th> <th width="70"> <div align="center">Used </div></th> </tr> <tr> <td><div align="center"><input type="text" name="txtCustomerID" size="5"></div></td> <td><input type="text" name="txtName" size="20"></td> <td><input type="text" name="txtEmail" size="20"></td> <td><div align="center"><input type="text" name="txtCountryCode" size="2"></div></td> <td align="right"><input type="text" name="txtBudget" size="5"></td> <td align="right"><input type="text" name="txtUsed" size="5"></td> </tr> </table> <input type="submit" name="submit" value="submit"> </form> </body> </html>
php_access_transaction2.php
<html> <head> <title>ShotDev.Com Tutorial</title> </head> <body> <? $objConnect = odbc_connect("mydatabase","",""); //*** Start Transaction ***// odbc_autocommit($objConnect,false); //*** Query 1 ***// $strSQL = "INSERT INTO customer "; $strSQL .="(CustomerID,Name,Email,CountryCode,Budget,Used) "; $strSQL .="VALUES "; $strSQL .="('".$_POST["txtCustomerID"]."','".$_POST["txtName"]."','".$_POST["txtEmail"]."' "; $strSQL .=",'".$_POST["txtCountryCode"]."','".$_POST["txtBudget"]."','".$_POST["txtUsed"]."') "; $objExec1 = odbc_exec($objConnect, $strSQL); if(!$objExec1) { //*** RollBack Transaction ***// odbc_rollback($objConnect); echo "Error Save [".$strSQL."]"; exit(); } //*** Query 2 ***// $strSQL = "INSERT INTO customer "; $strSQL .="(CustomerID,Name,Email,CountryCode,Budget,Used) "; $strSQL .="VALUES "; $strSQL .="('".$_POST["txtCustomerID"]."','".$_POST["txtName"]."','".$_POST["txtEmail"]."' "; $strSQL .=",'".$_POST["txtCountryCode"]."','".$_POST["txtBudget"]."','".$_POST["txtUsed"]."') "; $objExec2 = odbc_exec($objConnect, $strSQL); if(!$objExec2) { //*** RollBack Transaction ***// odbc_rollback($objConnect); echo "Error Save [".$strSQL."]"; exit(); } //*** Query 3 ***// $strSQL = "INSERT INTO customer "; $strSQL .="(CustomerID,Name,Email,CountryCode,Budget,Used) "; $strSQL .="VALUES "; $strSQL .="('".$_POST["txtCustomerID"]."','".$_POST["txtName"]."','".$_POST["txtEmail"]."' "; $strSQL .=",'".$_POST["txtCountryCode"]."','".$_POST["txtBudget"]."','".$_POST["txtUsed"]."') "; $objExec3 = odbc_exec($objConnect, $strSQL); if(!$objExec3) { //*** RollBack Transaction ***// odbc_rollback($objConnect); echo "Error Save [".$strSQL."]"; exit(); } //**** Commit Transaction ****// if(($objExec1) and ($objExec2) and ($objExec3)) { //*** Commit Transaction ***// odbc_commit($objConnect); echo "Save Done."; } odbc_close($objConnect); ?> </body> </html>
Create a php file and save to path root-path/myphp/
Run
http://localhost/myphp/php_access_transaction1.php
Screenshot
2induced…
…