Daten mit Post oder Get senden, ohne dass die Seite neuladet
3d
- php
Hallo,
Ich möchte Daten mit Post zum Datenbank schicken, und vorher die Eingabe mit mehrere Php Funktionen bearbeiten und dann im Datenbank einfügen.
z.b.
Eingabe Feld (index.php) -> Bearbeitung der Eingaben und im Datenbank einfügen (edit.php)
Die Daten werden mittle method="post" action="edit.php" versendet.
Nun möchte das die Bearbeitung im Hintergrund auf dem Server laufen und dass der Benutzer, wenn es auf submit klickt, in der Seite index.php bleibt. Also wie kann ich verhindern ,dass die Seite edit.php im Browser geöffnet wird??
2 Frage,
kann man die Datenbank anfrage in einem Cache auf dem Server speichern??
und die Cache nur aktualiesieren, wenn es Daten von der Eingabe im Frage 1 gestellt?
hi,
Die Daten werden mittle method="post" action="edit.php" versendet.
Nun möchte das die Bearbeitung im Hintergrund auf dem Server laufen und dass der Benutzer, wenn es auf submit klickt, in der Seite index.php bleibt. Also wie kann ich verhindern ,dass die Seite edit.php im Browser geöffnet wird??
Ajax ;-)
Method POST und Upload ist möglich, aber ein bischen geficke, habs noch nicht getestet. Musst mal ein bischen suchen mit Goooo.....e.
Hotti
hi,
»» Die Daten werden mittle method="post" action="edit.php" versendet.
»» Nun möchte das die Bearbeitung im Hintergrund auf dem Server laufen und dass der Benutzer, wenn es auf submit klickt, in der Seite index.php bleibt. Also wie kann ich verhindern ,dass die Seite edit.php im Browser geöffnet wird??Ajax ;-)
Method POST und Upload ist möglich, aber ein bischen geficke, habs noch nicht getestet. Musst mal ein bischen suchen mit Goooo.....e.
Hotti
Achso na ja Stimmt, das habe ich vergessen. Danke
Aber vielleicht gibt es auch so ein Tag wie method="post" action="edit.php"
redirect="no" :) ??
Gruß
Anfängerfragen sind ja ok ... aber wenn man absolut nicht weiss von was man spricht ...
http://www.php-kurs.info/warum_php.html
Anfängerfragen sind ja ok ... aber wenn man absolut nicht weiss von was man spricht ...
http://www.php-kurs.info/warum_php.html
ist das deine webseite??
wie kommst du drauf??
dass ich nicht weiß, wovon ich spreche??
hi,
aber ein bischen geficke, habs noch nicht getestet.
Ich schon -- wenn's mal gar nicht weiter geht, eine willkommene abwechslung ;))
mfg
Das Zauberwort heisst Ajax oder XMLHttpRequest
http://de.wikipedia.org/wiki/XMLHttpRequest
2 simple Bibliotheken bzw Links:
http://www.degraeve.com/reference/simple-ajax-example.php
http://www.modernmethod.com/sajax/
Gibt natürlich mittlerweile tausende (und sehr mächtige) Libraries (z.B. Zend).
echo $begrüßung;
Nun möchte das die Bearbeitung im Hintergrund auf dem Server laufen und dass der Benutzer, wenn es auf submit klickt, in der Seite index.php bleibt. Also wie kann ich verhindern ,dass die Seite edit.php im Browser geöffnet wird??
Ohne Ajax: Warum lässt du die Arbeit nicht von index.php erledigen? Oder willst du, dass nicht mal ein Roundtrip zum Server erfolgt?
kann man die Datenbank anfrage in einem Cache auf dem Server speichern??
und die Cache nur aktualiesieren, wenn es Daten von der Eingabe im Frage 1 gestellt?
Wenn ich dieses Wortgebilde richtig entschlüsselt habe: Das gibt Erweiterungen für PHP, die einen Cache zur Verfügung stellen. Die dürften aber nur auf dem eigenen Server einsetzbar sein. Der Wald- und Wiesenhoster wird sie nicht zur Verfügung stellen.
echo "$verabschiedung $name";
Hallo,
»» Nun möchte das die Bearbeitung im Hintergrund auf dem Server laufen und dass der Benutzer, wenn es auf submit klickt, in der Seite index.php bleibt. Also wie kann ich verhindern ,dass die Seite edit.php im Browser geöffnet wird??
Ohne Ajax: Warum lässt du die Arbeit nicht von index.php erledigen? Oder willst du, dass nicht mal ein Roundtrip zum Server erfolgt?
Wenn das im Index.php berechnet wird, dann braucht die Berechnung ungefär ein Minute Zeit. und Ich will nicht dass die Benutzer diese Zeit warten.
Ich werde halt das einfach dann mit Ajax basteln.
»» kann man die Datenbank anfrage in einem Cache auf dem Server speichern??
»» und die Cache nur aktualiesieren, wenn es Daten von der Eingabe im Frage 1 gestellt?Wenn ich dieses Wortgebilde richtig entschlüsselt habe: Das gibt Erweiterungen für PHP, die einen Cache zur Verfügung stellen. Die dürften aber nur auf dem eigenen Server einsetzbar sein. Der Wald- und Wiesenhoster wird sie nicht zur Verfügung stellen.
Hier habe ich was schönes gefunden, ich denke das hilft mir schon weiter. Aber leider kann man das nur auf eigenen Server einstellen.
Vielen Dank für deine Hilfe
http://www.administrator.de/Der_MySQL_Query-Cache.html
Hi,
dass der Benutzer, wenn es auf submit klickt, in der Seite index.php bleibt. Also wie kann ich verhindern ,dass die Seite edit.php im Browser geöffnet wird??
Indem edit.php keine Bildschirmausgabe macht, sondern einfach folgende Header sendet:
header('Status: 204 No Content');
header($_SERVER['SERVER_PROTOCOL'].' 204 No Content');
header('Connection: close');
Ajax ist für so etwas also vergleichsweise vollkommen überkandidelt. Es hat zudem den Nachteil, daß es nur bei aktiviertem JS (und ggf. aktiviertem ActiveX) funktioniert (eine halbwegs aktuelle JS-Version vorausgesetzt - aber auch den 204er verstehen seeeehr alte Browser ggf. nicht), bietet aber den Vorteil, auch das Ergebnis der Aktion mitgeteilt zu bekommen, um, z.B. bei Fehlern, darauf reagieren zu können.
Gruß, Cybaer