How to use PHP & Oracle (oci8) Edit/Update Rows Data This is the guideline/example scripts how to use PHP edit/update data on Oracle table.
ShotDev Focus:
- PHP & Oracle database edit/update data.
Example
php_oracle_update1.php
<html> <head> <title>ShotDev.Com Tutorial</title> </head> <body> <? $objConnect = oci_connect("myuser","mypassword","TCDB"); $strSQL = "SELECT * FROM CUSTOMER"; $objParse = oci_parse ($objConnect, $strSQL); oci_execute ($objParse,OCI_DEFAULT); ?> <table width="600" border="1"> <tr> <th width="91"> <div align="center">CustomerID </div></th> <th width="98"> <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="59"> <div align="center">Budget </div></th> <th width="71"> <div align="center">Used </div></th> <th width="30"> <div align="center">Edit </div></th> </tr> <? while($objResult = oci_fetch_array($objParse,OCI_BOTH)) { ?> <tr> <td><div align="center"><?=$objResult["CUSTOMERID"];?></div></td> <td><?=$objResult["NAME"];?></td> <td><?=$objResult["EMAIL"];?></td> <td><div align="center"><?=$objResult["COUNTRYCODE"];?></div></td> <td align="right"><?=$objResult["BUDGET"];?></td> <td align="right"><?=$objResult["USED"];?></td> <td align="center"><a href="php_oracle_update2.php?CusID=<?=$objResult["CUSTOMERID"];?>">Edit</a></td> </tr> <? } ?> </table> <? oci_close($objConnect); ?> </body> </html>
php_oracle_update2.php
<html> <head> <title>ShotDev.Com Tutorial</title> </head> <body> <form action="php_oracle_update3.php?CusID=<?=$_GET["CusID"];?>" name="frmEdit" method="post"> <? $objConnect = oci_connect("myuser","mypassword","TCDB"); $strSQL = "SELECT * FROM CUSTOMER WHERE CUSTOMERID = '".$_GET["CusID"]."' "; $objParse = oci_parse ($objConnect, $strSQL); oci_execute ($objParse,OCI_DEFAULT); $objResult = oci_fetch_array($objParse); if(!$objResult) { echo "Not found CustomerID=".$_GET["CusID"]; } else { ?> <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" value="<?=$objResult["CUSTOMERID"];?>"></div></td> <td><input type="text" name="txtName" size="20" value="<?=$objResult["NAME"];?>"></td> <td><input type="text" name="txtEmail" size="20" value="<?=$objResult["EMAIL"];?>"></td> <td><div align="center"><input type="text" name="txtCountryCode" size="2" value="<?=$objResult["COUNTRYCODE"];?>"></div></td> <td align="right"><input type="text" name="txtBudget" size="5" value="<?=$objResult["BUDGET"];?>"></td> <td align="right"><input type="text" name="txtUsed" size="5" value="<?=$objResult["USED"];?>"></td> </tr> </table> <input type="submit" name="submit" value="submit"> <? } oci_close($objConnect); ?> </form> </body> </html>
php_oracle_update3.php
<html> <head> <title>ShotDev.Com Tutorial</title> </head> <body> <? $objConnect = oci_connect("myuser","mypassword","TCDB"); $strSQL = "UPDATE CUSTOMER SET "; $strSQL .="CUSTOMERID = '".$_POST["txtCustomerID"]."' "; $strSQL .=",NAME = '".$_POST["txtName"]."' "; $strSQL .=",EMAIL = '".$_POST["txtEmail"]."' "; $strSQL .=",COUNTRYCODE = '".$_POST["txtCountryCode"]."' "; $strSQL .=",BUDGET = '".$_POST["txtBudget"]."' "; $strSQL .=",USED = '".$_POST["txtUsed"]."' "; $strSQL .="WHERE CUSTOMERID = '".$_GET["CusID"]."' "; $objParse = oci_parse($objConnect, $strSQL); $objExecute = oci_execute($objParse, OCI_DEFAULT); if($objExecute) { oci_commit($objConnect); //*** Commit Transaction ***// echo "Save completed."; } else { oci_rollback($objConnect); //*** RollBack Transaction ***// $e = oci_error($objParse); echo "Error Save [".$e['message']."]"; } oci_close($objConnect); ?> </body> </html>
Create a php file and save to path root-path/myphp/
Run
http://localhost/myphp/php_oracle_update1.php
Screenshot
3mutable…
…