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