wellso
asked on
Form Submits Twice
Hi there,
Having a small problem with a form, when it is submitted it inserts a duplicate record in the database, any idea what could be causing this?
Having a small problem with a form, when it is submitted it inserts a duplicate record in the database, any idea what could be causing this?
<?
require_once('includes/session.php');
require_once('includes/oracle.php');
require_once('includes/debug.php');
if(isset($_GET['delete'])){
$delete = oci_parse($connect,"DELETE FROM DOCSJOBGROUPS WHERE JOBGROUP_ID = :remove");
@oci_bind_by_name($delete, ":remove",$_GET['delete']);
oci_execute($delete);
}
if($_POST['addgroups'] == 'true'){
nicePrint($_POST);
$add = oci_parse($connect,"INSERT INTO DOCSJOBGROUPS (JOBGROUP_ID, ORDER_NO_1, ORDER_NO_2) VALUES (JOBGROUP_ID_SEQ.NEXTVAL, :order_no_1, :order_no_2)");
@oci_bind_by_name($add,":order_no_1", $_POST['order_no_1']);
@oci_bind_by_name($add,":order_no_2", $_POST['order_no_2']);
oci_execute($add);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Group Orders</title>
<link href="includes/links.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="includes/js/menu.js"></script>
</head>
<body>
<? include('menu.php'); ?>
<p align="center" class="mainheadings">Add Grouping</p>
<form id="form1" name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>">
<p align="center">
<input type="text" name="order_no_1" id="order_no_1" />
<span class="mainheadings">&</span>
<input type="text" name="order_no_2" id="order_no_2" />
<input type="hidden" name="addgroups" value="true" />
</p>
<p align="center">
<input type="submit" />
</p>
</form>
<p align="center" class="mainheadings">Current Groupings</p>
<table width="200" border="0" align="center" cellpadding="0" cellspacing="0">
<?
$getgroups = oci_parse($connect,"SELECT ORDER_NO_1, ORDER_NO_2, JOBGROUP_ID FROM DOCSJOBGROUPS");
oci_execute($getgroups);
while($row = oci_fetch_row($getgroups)){
?>
<tr>
<td class="maintext"><div align="center"><?=$row[0]?></div></td>
<td class="maintext"><div align="center"><?=$row[1]?></div></td>
<td class="maintext"><div align="center"><a href="<?=$_SERVER['PHP_SELF']?>?delete=<?=$row[2]?>">Remove</a></div></td>
</tr>
<?
}
?>
</table>
</body>
ASKER
sure
session.php
<? @session_start();
if(empty($_SESSION['myusername'])){
header("location: index.php?home=true");
}
?>
oracle.php
<? $connect = oci_pconnect('gi', 'welcom', 'xxxxx');
?>
debug.php
<?
function nicePrint($printme){?>
<pre><?
print_r($printme)?>
</pre>
<? }
function jsAlert($var)
{
echo '<script type="text/javascript">
alert("'.$var.'");
</script>';
}
?>
if there is no page reload caused by anything in your code after you submit your form - and I don't see
from your code where the page-reload could happen (your page with form is not 'home', is it?)
More likely I sense that trouble could be in your SQL-code, here:
$add = oci_parse($connect,"INSERT INTO DOCSJOBGROUPS (JOBGROUP_ID, ORDER_NO_1, ORDER_NO_2) VALUES (JOBGROUP_ID_SEQ.NEXTVAL, :order_no_1, :order_no_2)");
Not sure about the JOBGROUP_ID_SEQ.NEXTVAL syntax, but somehow my intuition says it could be
a reason (first inserting into the next available id, then again because of nextval adding an id with same
values ??)
but not sure about it, since I am not experienced with Oracle SQL and highly recommend you to post this issue
in the Oracle SQL zone, for real experts to contribute from there, too.
from your code where the page-reload could happen (your page with form is not 'home', is it?)
More likely I sense that trouble could be in your SQL-code, here:
$add = oci_parse($connect,"INSERT
Not sure about the JOBGROUP_ID_SEQ.NEXTVAL syntax, but somehow my intuition says it could be
a reason (first inserting into the next available id, then again because of nextval adding an id with same
values ??)
but not sure about it, since I am not experienced with Oracle SQL and highly recommend you to post this issue
in the Oracle SQL zone, for real experts to contribute from there, too.
What about the menu.php?
ASKER
I have disabled all includes apart from oracle.php which has the database connect string and still no luck
ASKER
oddly this only seems to happen in firefox and not IE
ASKER CERTIFIED SOLUTION
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
ASKER
not quite found the solution but on the right track, thanks for the help and sorry for slow repsonse
require_once('includes/ses
require_once('includes/ora
require_once('includes/deb