Zum Inhalt springen

Formular an eigenes PHP Script senden

Erstellt am 13. April 2006 · 2 Antworten · letzte Antwort am 3. Mai 2006

Tags: Frage

flexscript ·

Hallo zusammen,

nachdem ich ausführlich in diesem wunderbaren Forum gestöbert habe, leider aber keine Lösung für mein Problem entdecken konnte, hier mein Problem:

jede Seite soll ein Formular enthalten, welches mehrere Dropdowns und Eingabefelder enthält. Das Formular ist im Template integriert. Um die Auswahl bzw. Eingabe auswerten zu können, möchte ich das Formular an ein eigenes PHP-Script senden und von dort aus weiterverfahren.

Meine Frage: wie mache ich das am geschicktesten?
- über eine eigene Extension, die das PHP-Script enthält? (Wenn ja, wie macht man das?)
- eigenes PHP als action eintragen? Wie komme ich dann an alle notwendigen Variablen?

Bin für jeden Tip dankbar.

thomasweb ·

Würde mich auch interessieren!

Habe schon Extension lumophpinclude ausprobiert (zum einbinden externer php-dateien), aber das Form funktioniert nicht wenn man auf senden drückt.

Ich habe jetzt quasi eine externe php-datei mit einem Formular. Ich weiss nur nicht, was ich bei action= eingeben muss, damit das Formular die Variablen übergibt und auf der selben Seite anzeigt.

thomasweb ·

Hab die Lösung selbst gefunden:

- Extension page_php_content installieren (Achtung evtl. nicht unter typo3.org gelistet! => einfach in typo3 > Ext Manager "page_php_content" suchen

- Neue Seite einfügen (evtl. häkchen bei "Nicht cachen" (dafür evtl. 2. Optionspalette anzeigen); geht oft auch ohne)

- Neuen Inhalt einfügen > Allgemeines Plugin > Oben "Typ: PHP Skript"

- PHP zwischen <? ?> einfügen

###

Noch ein paar Zusatzinfos:

- ACHTUNG:
Variablen werden zwar übergeben, können aber nur in Form von:

$vari1= $_POST["variablenname"];
(oder: echo $_POST["variablenname"];

nach der Übergabe aufgenommen werden. (gilt auch fürs schreiben in Textdateien)

- Tip 1:
Bei Formularen in den Befehl action= richtige Seiten-ID eingeben.
Beispiel:
<form name="einlogform" action="index.php?id" method="post">

- Tip 2:
Mit include(""); können Dateien eingebunden werden:

Bsp:
include ("fileadmin/unterordner/irgendeinedatei.txt");

- Tip 3:
Dateien können auch mit fread gelesen werden:

Bsp:
$zeiger=fopen("fileadmin/unterordner/irgendeinedatei.txt", "r");
$varimitinhalt=fread($zeiger, filesize("fileadmin/unterordner/irgendeinedatei.txt"));
echo $varimitinhalt;
fclose($zeiger);

- Tip 4:
Schreiben geht auch:

Bsp:
$zeiger=fopen("fileadmin/unterordner/irgendeinedatei.txt", "a");
$_POST["inhalt"] = stripslashes($_POST["inhalt"]); // Ersetzt in einer Vari \" \" durch richtige Anführungsstriche: ""
fwrite($zeiger, $_POST["inhalt"]);
fclose($zeiger);