Formulareingaben aus Firefox doppelt eingetragen?

Martys

Erfahrenes Mitglied
Hallo,

ich habe ein komisches Problem. Ich trage mit folgendem Script Formulareingaben in eine MYSQL-Datenbank ein:

PHP:
if($_GET['topic'] == "newpost"){
$name = $_REQUEST['name'];
$email = $_REQUEST['email'];
$nachricht = $_REQUEST['text'];
$ip = $REMOTE_ADDR;
// Wandle Zeilenumbrüche um
$nachricht = htmlentities(stripslashes($nachricht));
// $nachricht = ereg_replace( "\n", "<br />", $nachricht);
// ermittle Datum und Uhrzeit
$timestamp = time();
$datum = date("d.m.Y",$timestamp);
$zeit = date("H:i:s",$timestamp);

// Schreibt Einträge
// Verbindung zur Datenbank herstellen
include ("dbconnect.php");
// Datenbank wählen
mysql_select_db($db, $dbc) or die ("Die Datenbank existiert nicht");
$eintrag = "INSERT INTO gbook (name, email, nachricht, datum, zeit, ip) VALUES ('$name', '$email', '$nachricht', '$datum', '$zeit', '$ip')";
$eintragen = mysql_query($eintrag); 

// ENDE
echo '<p class="normal">Vielen Dank für den Eintrag, '.$name.'!</p><p class="normal"><a href="index.php?section=gbook">&raquo; Zu den Einträgen</a></p>';
mysql_close ($dbc);
}

HTML:
<form action="index.php?section=gbook&amp;topic=newpost" method="post" class="gbook">

Datenbank:

PHP:
CREATE TABLE `gbook` (
  `id` int(5) NOT NULL auto_increment,
  `name` varchar(150) NOT NULL default '',
  `email` varchar(150) NOT NULL default '',
  `nachricht` text NOT NULL,
  `datum` varchar(10) NOT NULL default '',
  `zeit` varchar(8) NOT NULL default '',
  `ip` varchar(20) NOT NULL default '',
  PRIMARY KEY  (`id`)
)

Die Daten werden auch eingetragen, allerdings muss der Firefox das Formular "doppelt" senden, d. h. es wird ein zweiter Eintrag ohne Inhalt vorgenommen. Im IE 6, Opera 6 funktioniert es wunderbar. Ich habe keine Ahnung woran dies liegen könnte.

Danke schon mal,

Martys

Screenshot im Anhang.
 

Anhänge

  • fehler.gif
    fehler.gif
    5 KB · Aufrufe: 75
Geht mir auch so. Bemerkenswert ist, daß als Absender-IP eine von Google mitgesendet wird. Hast Du mittlerweile eine Lösung gefunden?
 
Leider hilft mir das nicht wirklich. Es scheint ein Firefox-spezifisches Problem zu sein. Dieser läd die Seite mehrfach, obwohl mal das Form nur einmal abgeschickt hat. Die zusätzlichen Mails enthalten die gleiche SessionID, aber IPs, die aus dem von Google benutzten Bereich stammen.

Evtl hat das ganze mit dem Prefetch-Feature von Firefox zu tun. Allerdings bin ich noch nicht dahinter gekommen, wie ich das abschalten kann.
 
Hallo,

wenn man den Firefox im Safemode startet (Pfadangabe/firefox.exe" -safe-mode) tritt das Problem nicht auf. Mehr habe ich nicht rausgefunden.
 
Zurück