Selbstaufruf eines Formulars mit Variablenübergabe

Katjusha

Mitglied
Hallo!

ich habe da so ein Problem, für welches ich mit der Suchfunktion keine Lösung finden konnte. Es ist wohl ein ziemlich einfaches Problem, aber ich komme nicht auf die Lösung.

Ich habe für ein Memberscript ein Formular erstellt mit welchem ich alle nötigen Angaben der neuen Member in eine SQL-Datenbank einpflegen kann. Ein Klick auf abschicken und schon pflegt er es ein.

Wenn ich dann den zurückbutton klicke und die seite aktualisiere zeigt er mir unter dem Formular die letzten 3 gemachten Einträge an.

Mich würde nun interessieren wie ich mir den Schritt obendrüber sparen kann. Ich weiß, daß ich die Daten an die Formulareintragungsdatei schicken kann und dann mit IF-Schleife schauen kann ob Daten vorhanden sind. Das heißt also ich möchte die Daten einpflegen und dann sofort wieder das nun wieder leere alte Formular aktualisiert um das neue Mitglied vor mir haben.

Das funktioniert nur bei mir irgendwie nicht Könnte jemand mir bitte einen Link zu einem 0815-Script mit dieser Funktionalität geben oder es für einen wohl langsam denkenden Menschen wie mich erklären?

Ich danke im Voraus!
 
Du könntest bei erfolgreichem Eintrag in die DB anstatt einer Ausgabe eine Weiterleitung einbauen.
PHP:
header("Location:http://www.deinedomain.de/pfad/zum/script/members.php");
 
Beispiel:
Du hast eine Tabelle users mit den Feldern username und passwort
Die im Script includete, hier fiktive, connectdb.php ist natuerlich fuer den Verbindungsaufbau zur Datenbank zustaendig.
test.php:
PHP:
<html>
<body>
<?php
include("connectdb.php");
if ($_POST["insert"])
 {
  if (($_POST["username"]) && ($_POST["password"]))
   {
    $username=$_POST["username"];
    $password=md5($_POST["password"]);
    mysql_query("insert into users (username,passwort) values ('$username','$password')");
   }
 }
$users=mysql_query("select * from users order by username");
printf("<table border='1'>");
while ($user=mysql_fetch_assoc($users))
 {
  printf("<tr><td>%s</td></tr>",$user["username"]);
 }
printf("</table>");
mysql_close();
?>
<form method="post" action="test.php">
Username:<input type="text" name="username"><br>
Passwort:<input type="password" name="password"><br>
<input type="submit" name="insert" value="Add User">
</form>
</body>
</html>

So hast Du dann alles in einem Script, und kannst das auch noch recht einfach erweitern sodass Du mit dem Script auch Loeschen und Editieren kannst.
 
Zuletzt bearbeitet:
Wie es Ceraph bereits erwähnt hat, leitest du den Benutzer einfach bei Erfolg auf das Script, welches die Mitglieder auflistet.
Und in diesem Fall ist es hilfreich, dass mit dem Senden eines HTTP-Header-Feldes „Location“ mit der header()-Funktion gleichzeitig ein passender HTTP-Statuscode (302 „Found“) gesendet wird.
 
Hat ja super gepasst! Ich mußte nur ein paar Sachen ändern und es lief wunderbar! :)

danke nochmal

Kleiner Sonderwunsch:
Gibt es die Möglichkeit, daß ich nach dem Eintragen automatisch den zeiger im textfeld habe? sprich das ich quasi bis auf das <tab> <abschicken> drücken durchschreiben könnte? Würde mir einiges an zeit ersparen bei meinem schlepptop. ;)
 
hm ok, hab mir das mal durchgelesen und ich werd ohne auskommen müssen! ;-]

andere Frage:
Wenn ich nach einem Eintrag die Internetseite aktualisieren lasse, so sendet er erneut die Infos an den Server, welcher dann das erneut auf dem Server einträgt. Ich habe mal etwas über unset() versucht, aber klappt nicht. Gibts da auch einen Dreh?
 
Zurück