Hallo,
ich habe ein einfaches Formular erstellt:
Code:
<?php
if (isset($_REQUEST['submit']))
{
$sql = " INSERT INTO news_comments ";
$sql .= " SET ";
$sql .= " name ='". $_POST['name'] ."', ";
$sql .= " datum ='". date("Y-m-d H:i:s") ."', ";
$sql .= " comment ='". $_POST['comment'] ."' ";
}
$db_erg = mysql_query( $sql );
if ( ! $db_erg )
{
die('Ungültige Abfrage: ' . mysql_error());
}
$sql = "
SELECT
*
FROM news_comments ";
$db_erg = mysql_query( $sql );
if ( ! $db_erg )
{
die('Ungültige Abfrage: ' . mysql_error());
}
echo "<h1> Ein Kommentar abgeben</h1><br />
<form method=\"post\">
Name: <input type=\"text\" name=\"name\" id=\"name\" /><br />
Kommentar: </ br> <br>
<textarea cols=\"30\" rows=\"5\" name=\"comment\"></textarea><br />
<input type=\"submit\" value=\"Abgeben\" id=\"submit\" name=\"submit\" />
</form>";
$anzahl_eintraege = mysql_num_rows($db_erg);
echo "<p>Anzahl der Kommentare: $anzahl_eintraege </p>";
while ($daten = mysql_fetch_array( $db_erg, MYSQL_ASSOC))
{
echo "<div id=\"container5\">
<div id=\"gaestebuchname\">Name:" . $daten["name"] . " </div>
<div id=\"gaestebuchdatum\">Datum: " . $daten["datum"] . "</div>
<div id=\"gaestebuchkommentar\"> " . $daten["comment"] . "</div>
</div>";
}
?>
Obwohl ich oben die Bedingung habe, dass der Submit Button gedrückt werden muss, wird dennoch schon alleine beim aktualisieren des Browsers (IE) ein weiterer eintrag gesetzt mit den Daten des vorigen....der explorer gibt mir auch ne warnung an: "Die bereits eingegebenen Informationen müssen erneut gesendet werden, um die Website wieder anzuzeigen, Wenn ich auf "Wiederholen" klicke verdoppelt sich der letzte eintrag. Aber das kann ich nicht jedem Besucher zumuten, dass er so eine Meldung bekommt und außerdem sind dann etliche Einträge doppelt drin wenn irgendwer aktualisiert...was hab ich falsch gemacht im Script?
Liebe Grüße
Stefan