|
Posted by egibberate on 01/21/07 15:58
"egibberate" <colingray45@btinternet.com> wrote in message
news:As-dnRDIM4IdGi7YnZ2dnUVZ8rKdnZ2d@bt.com...
> "egibberate" <colingray45@btinternet.com> wrote in message
> news:fYSdnbWy94w86C7YRVnytAA@bt.com...
>> Hi,
>>
>> complete novice I'm afraid. When I input data into the form
>>
>> and click the submit button, the data is sent to the database twice
>> ?
>>
>> ie. two identical records are logged into the table. Can anyone spot
>> the
>>
>> flaw in the code below? Thanks in anticipation.
>>
>> <?
>>
>> if ($_POST) {
>>
>> $msg = "";
>>
>> foreach($_POST as $k => $v) {
>>
>> $v = trim($v) ;
>>
>> $$k = $v ;
>>
>> if ($v=="") {
>>
>> $msg = "Please fill in both fields";
>>
>> }
>>
>> }
>>
>> if ($msg=="") {
>>
>> $insert = "INSERT INTO tblshop_name
>>
>> (strshop_name, intshopcentre)
>>
>> VALUES ('$sn','$sc')";
>>
>> $link = mysqli_connect('localhost','root','blablabla','blablabla');
>>
>> if (!mysqli_query($link, $insert)) {
>>
>> $msg = "Error inserting data";
>>
>> } else {
>>
>> $msg = "Record successfully added";
>>
>> $sn = $sc = "";
>>
>> }
>>
>> mysqli_close($link);
>>
>> }
>>
>> echo "<div class=\"error\">$msg</div>";
>>
>> } else {
>>
>> $sn = $sc = "";
>>
>> }
>>
>> ?>
>>
>> <FORM METHOD="post" ACTION="<? echo
>>
>> $_SERVER['PHP_SELF'] ?>">
>>
>> <TABLE BORDER="1" CELLPADDING="5">
>>
>> <TR>
>>
>> <TH>Shop Name</TH>
>>
>> <TH>Retail Park</TH>
>>
>> </TR>
>>
>> <TR>
>>
>> <TD><INPUT TYPE="text" NAME="sn" VALUE"<?
>>
>> echo $sn ?>" /></TD>
>>
>> <TD><INPUT TYPE="text" NAME="sc" VALUE="<?
>>
>> echo $sc ?>" /></TD>
>>
>> </TR>
>>
>> </TABLE>
>>
>> <BR/>
>>
>> <INPUT TYPE="submit" VALUE="Add to database" />
>>
>> <INPUT TYPE="reset" VALUE="Cancel" />
>>
>> </FORM>
>>
>>
> Hi again,
> I copied the following two lines
> from the apache server access log that
> shows the data being sent two times,
> 39 seconds apart. Curious!
> 127.0.0.1 - - [21/Jan/2007:14:54:20 +0000] "POST /blablablabla.php
> HTTP/1.1" 200 2140
> 127.0.0.1 - - [21/Jan/2007:14:54:59 +0000] "POST /blablablabla.php
> HTTP/1.1" 200 2140
Hi yet again,
every time I click the refresh button on my browser
another identical record to the last, is entered into the table even tho
the form has nothing typed in the text boxes.
>
>
Navigation:
[Reply to this message]
|