• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Formular absenden ohne neues Fenster

Alex55

Mitglied
Hallo,

wie kann man ein Formular absenden ohne das sich ein neues Fenster öffnet? Also das praktisch nichts passiert.
Hier der Code:

<form action="neuerbeitrag.php" Method="post" target="_self">


<input name="inhalt" type="text" size="100" maxlength="500">

Lg
 
Das Attribut target="" ist auf <form> nicht anwendbar.
Das Ziel des Formulars wird bereits in action="" bestimmt.
Was du willst, kann auf drei Arten Erreicht werden.
1. Ausgabe und Verarbeitung in der selben Datei.
2. Umleitung per Header() zurück zum Formular, nach Verarbeitung der Eingaben.
3. onclick-Auswertung mit Javascript.

Das absolut garnichts Wahrnehmbares mit der aufgerufenen Seite geschieht ist nur durch Möglichkeit 3. erreichbar
 
Ajax

Hi, hätte noch 'ne sehr gute Möglichkeit, wenn nicht die Musterlösung xD... Es nennt sich AJAX, es kann im Hintergrund POST und GET Anfrage senden an URLs und sogar die zurückgegebenen Daten benutzen. Es ist ein Teil von Javascript. Ich hab' mal 'nen Beispiel gemacht und jQuery genutzt, da man mit jQuery Ajax sehr einfach und browserübergreifend nutzen kann. Ich halte es für absolut nicht ratsam AJAX ohne jQuery zu benutzen, da verschieden verbreitete Browser verschiedene AJAX-Objekte benutzten, nur mit jQuery funktioniert's unter allen Browsern. Die 31KB leichte Bibiliothek habe sich über eine Zeile im eingebunden (nur damit du dich nicht wunderst, was die Zeile bedeutet). Der Rest ist super easy... Einfach
Code:
$.post(url, daten);
Wenn Javascript deaktiviert ist, wird man zwar weitergeleitet auf das PHP-Skript, doch dieses leitet einen sofort wieder zurück... Sehen tut man's trotzdem. Kannst ja mal Javascript ausschalten, um den Vorteil von AJAX sehen zu können. Hier ist die Website: ajaxPost Und hier der komplette Code als Download: https://dl.dropbox.com/u/22130957/ajaxPost.zip Wenn du Fragen hast, kann ich dir helfen, aber jetzt bin ich erst mal für drei Wochen nicht da... xD
 
Hm, ja... Du schlägst vor, die Daten JavaScript bearbeiten zu lassen, aber das nennt man dann nicht mehr "Formular abschicken", denn dann werden die Daten ja Client-seitig bearbeitet, d.h. man schickt nichts zurück an den Server, der die Daten dann gar nicht zu sehen bekommt... Ich lasse aber trotzdem PHP die Daten auf dem Server auswerten, d.h. bei meiner Methode werden die Daten tatsächlich abgeschickt und er Server erhält diese über's Internet... Wie willst du beispielsweise mit deiner Methode die Daten in einer Datei auf dem Server speichern?
 
Zurück
Oben