hallo leute,
also ich habe ein Formular, in das Werte eingetragen werden können. Drückt man den "ok"-button, werden die Werte in eine mysql-Tabelle eingetragen und gleichzeitig alle in der Tabelle befindlichen Einträge zeilenweise ausgegeben.
Problem ist jetzt: Drückt man ok werden die Einträge eingetragen und ausgegeben- aber wenn man den reload button des browsers drückt, dann werden die Werte erneut eingetragen, weil ich ja die url nicht von den GET variablen befreit habe.
Das habe ich mit unset submit probiert, aber klappt nicht. Wie mach ich das?
Vielen Dank
Hier noch der code:
also ich habe ein Formular, in das Werte eingetragen werden können. Drückt man den "ok"-button, werden die Werte in eine mysql-Tabelle eingetragen und gleichzeitig alle in der Tabelle befindlichen Einträge zeilenweise ausgegeben.
Problem ist jetzt: Drückt man ok werden die Einträge eingetragen und ausgegeben- aber wenn man den reload button des browsers drückt, dann werden die Werte erneut eingetragen, weil ich ja die url nicht von den GET variablen befreit habe.
Das habe ich mit unset submit probiert, aber klappt nicht. Wie mach ich das?
Vielen Dank
Hier noch der code:
PHP-Code:
<html>
<form action="<?= $_SERVER['REQUEST_URI']; ?>" method="get">
<p>
<label for="Vorname">Vorname:</label>
<input type="text" name="Vorname">
</p>
<p>
<label for="Nachname">Nachname:</label>
<input type="text" name="Nachname">
</p>
<input type="submit" name="submit" value="eintragen" class="submit">
</form>
<?php
// Wenn Submit gedrückt, Werte in DB und submit reset: --------------------------------------
$host ="localhost";
$user = "root";
$pass = "xxxx";
$db = "db_test";
$connect=mysql_connect("{$host}","{$user}","{$pass}");
$db_connect = mysql_select_db($db);
if (isset($_GET['submit'])){
$insert= "
INSERT INTO `db_test`.`tabelle_1` (`ID`, `Vorname`, `Nachname`) Values (NULL, '{$_GET["Vorname"]}', '{$_GET["Nachname"]}');
";
mysql_query($insert);
}
// ----------- submit resetten
if (isset($_GET['submit'])){
unset ($_GET['submit']); }
// ---------- Einträge auflisten und zeilenweise ausgeben ---------------------
if(!$connect){
echo "NO CONNECTION !!!";}
else{
if(!$db_connect){
echo "NO DB CONNECTION !!!";}
else{
$abfrage = mysql_query("SELECT * FROM tabelle_1");
if($num_rows = mysql_num_rows($abfrage)==0){
echo "Keine Einträge";}
else{
while($ergebnis = mysql_fetch_assoc($abfrage)){
echo $ergebnis['Vorname']." ".$ergebnis['Nachname']."<br />";
}
}
}
}
?>
</html>
Kommentar