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…
…