PHP-Script ausführen, ohne HTML-Formular zu beenden
Hi NG,
ich bin's schon wieder ;). Kann ich ein PHP-Script ausführen, ohne das aufrufende Formular zu verlassen?
Es geht mir darum, Daten in einer Datenbank zu speichern.
Gruß
Andy
ich bin's schon wieder ;). Kann ich ein PHP-Script ausführen, ohne das aufrufende Formular zu verlassen?
Es geht mir darum, Daten in einer Datenbank zu speichern.
Gruß
Andy
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 203690
Url: https://administrator.de/forum/php-script-ausfuehren-ohne-html-formular-zu-beenden-203690.html
Ausgedruckt am: 12.04.2025 um 19:04 Uhr
7 Kommentare
Neuester Kommentar
hi
ich bin null der scripter, aber ich hatte es mal. kurzerhand möchte ich dir einen tip mitgeben
wie es in javascript onClick gibt oder OnMouseover gibt es bestimmt auch so sachen wie einen trigger welcher bei betätigen der tastatur anspringt. bei genügend ahnung (und die habe ich nicht) lässt sich damit javacript und php verbinden.
Grüße Chris
ich bin null der scripter, aber ich hatte es mal. kurzerhand möchte ich dir einen tip mitgeben
wie es in javascript onClick gibt oder OnMouseover gibt es bestimmt auch so sachen wie einen trigger welcher bei betätigen der tastatur anspringt. bei genügend ahnung (und die habe ich nicht) lässt sich damit javacript und php verbinden.
Grüße Chris
hier sind die javascript event-handler. vielleicht hilfts weiter.
http://de.selfhtml.org/javascript/sprache/eventhandler.htm
http://de.selfhtml.org/javascript/sprache/eventhandler.htm
das hilft vielleicht weiter:
http://de.selfhtml.org/javascript/sprache/eventhandler.htm#onkeydown
besonders die erläuterung:
Erläuterung:
Im Beispiel wird ein Formular definiert, in dem der Anwender eine Kurzbeschreibung seiner Homepage in einem Eingabefeld abliefern kann. Der Text soll maximal 50 Zeichen lang sein. Damit der Anwender nicht mitzählen muss, gibt es ein kleines Eingabefeld nebendran, in dem nach jedem Tastendruck ausgegeben wird, wie viele Zeichen bereits eingegeben wurden. Dazu ist in dem Eingabefeld mit Namen Eingabe der Event-Handler onkeydown notiert. Er bewirkt, dass, solange der Anwender in dem Formularfeld etwas eingibt, bei jedem Tastendruck die Funktion Aktualisieren() aufgerufen wird, die im Dateikopf in einem Script-Bereich definiert ist. Diese Funktion errechnet aus document.Test.Eingabe.value.length + 1, wie viele Zeichen bereits eingegeben wurden, und schreibt eine entsprechende Ausgabe in das dafür vorgesehene "Eingabe"-Feld.
http://de.selfhtml.org/javascript/sprache/eventhandler.htm#onkeydown
besonders die erläuterung:
Erläuterung:
Im Beispiel wird ein Formular definiert, in dem der Anwender eine Kurzbeschreibung seiner Homepage in einem Eingabefeld abliefern kann. Der Text soll maximal 50 Zeichen lang sein. Damit der Anwender nicht mitzählen muss, gibt es ein kleines Eingabefeld nebendran, in dem nach jedem Tastendruck ausgegeben wird, wie viele Zeichen bereits eingegeben wurden. Dazu ist in dem Eingabefeld mit Namen Eingabe der Event-Handler onkeydown notiert. Er bewirkt, dass, solange der Anwender in dem Formularfeld etwas eingibt, bei jedem Tastendruck die Funktion Aktualisieren() aufgerufen wird, die im Dateikopf in einem Script-Bereich definiert ist. Diese Funktion errechnet aus document.Test.Eingabe.value.length + 1, wie viele Zeichen bereits eingegeben wurden, und schreibt eine entsprechende Ausgabe in das dafür vorgesehene "Eingabe"-Feld.
Es gibt die möglichkeit aus PHP heraus den HTML Error Code 204 zu senden. Dieser Fehlercode sollte verhindern, dass der Browser die Seite wechselt.
Besser ist es aber auf jeden Fall hier mit JS (jQuery wenn du möchtest) zu arbeiten und per AJAX das Formular zu senden. Dann können auch Fehlermeldungen etc. ausgewertet werden.
http_response_code( 204 );
// php < 5.4.0
header("HTTP/1.1 204 No Content");
Besser ist es aber auf jeden Fall hier mit JS (jQuery wenn du möchtest) zu arbeiten und per AJAX das Formular zu senden. Dann können auch Fehlermeldungen etc. ausgewertet werden.
Hallo,
ich glaube es ist sinnvoller wenn Du detaillierter beschreibst was Dein Ziel ist und auch warum. Dann kann man Dir auch zielgerichtet antworten, vor allem unter dem Hintergrund, dass es für Deine frage verschiedene Lösungsansätze gibt, die von ihrer Komplexität stark differieren.
Z.B. wäre es ja auch möglich, dass es reicht wenn Dein PHP-Skript nach Aufruf die gleiche Seite wieder erstellt und die im Vorfeld gesendeten Daten erneut einträgt.
Gruß
ich glaube es ist sinnvoller wenn Du detaillierter beschreibst was Dein Ziel ist und auch warum. Dann kann man Dir auch zielgerichtet antworten, vor allem unter dem Hintergrund, dass es für Deine frage verschiedene Lösungsansätze gibt, die von ihrer Komplexität stark differieren.
Z.B. wäre es ja auch möglich, dass es reicht wenn Dein PHP-Skript nach Aufruf die gleiche Seite wieder erstellt und die im Vorfeld gesendeten Daten erneut einträgt.
Gruß