{{indexmenu_n>100}}
====== GET-Variablen übergeben ======
**Was soll erreicht werden:**
Die Übergabe von eingegebenen Formulardaten in der URL um diese weiterverarbeiten zu können.
Beispiel: \\
##%%http://example.com/index.php?category01&email={email}&nachname={name}&postleitzahl={plz}%%##
Formelles Ergebnis mit den eingegebenen Daten:
* E-Mail: f.meyer@example.org
* Name: Meyer
* PLZ: 12345
##%%http://example.com/index.php?category01&email=f.meyer@example.org&nachname=Meyer&postleitzahl=12345%%## #jump47 \\
//(Der Anker hier z.B. #jump47 wird automatisch angehängt, wird aber beim auslesen der Variablen ignoriert)//.
Um [[http://tut.php-q.net/de/get.html|GET-Variablen]] aus dem Formular heraus zu übergeben bedarf es einer grundsätzlichen Überlegung wie das Formular während der Laufzeit arbeitet.
- Das Formular wird ausgefüllt
- Das Formular wird gesendet //(submit)//
- Die Eingaben werden ausgelesen, geprüft und wenn i.o. in die Platzhalter in den Sendevorlagen und in den Erfolgtext eingesetzt \\ //(Ist hier Redirect aktiviert, werden in diesem Feld alle Platzhalter gelöscht und keine Daten eingetragen)//
- Die Daten werden in die DB geschrieben wenn erlaubt //(Formularergebnis speichern )//
- Der Prozess sieht nach, ob ein Script abgearbeitet werden muss //(Vorlagen -> PHP-Funktion:)//
- Der Prozess verzweigt je nach Einstellung //(bei Erfolg: [ ] Text / HTML || [ ] Redirect)//
\\
Der Punkt **6.** sollte näher betrachtet werden, da hier entschieden wird, wohin das Formular nach abgeschlossener Eingabe verzweigt.
Im Modus Text/HTML können die eingegebenen Formularfeldwerte mit Hilfe der angelegten Feldnamen eingesetzt werden, Z.B. {email} [name} {plz} ... . Nur in diesem Modus werden die {Namen} interpretiert.
Im Modus Redirect wird kein Wert an den entsprechenden Platzhalter übertragen, bzw. der Platzhalter vorher vom System gelöscht.
Um trotzdem per "Redirect" Daten aus dem Formular übertragen zu können versenden wir das Formular mit der Einstellung: **bei Erfolg:** [x] Text oder [x] HTML .
Für die nachträgliche Umschaltung müssen wir ein Script bemühen, das unter Vorlagen in "PHP-Funktion:" eingetragen wird.
==== Script: ====
**Datei:** template/inc_script/frontend_init/form_onsuccess_on.php
====== ======
\\
So wird erreicht, das die Feldwerte in die Platzhalter eingesetzt werden und das Formular umgeleitet wird. Wir bekommen eine saubere URL mit eingebetteten Werten.
**Externe Variablen wie GET-Variablen sollten nie direkt ausgeben, geschweige denn als richtig oder gültig angesehen werden. Diese Variablen müssen beim Empfang nach allen Regeln der Kunst auf Richtigkeit geprüft werden !!**
Siehe: [[http://tut.php-q.net/de/get.html#s3|Gefahren von Außen]]
\\
**Ist man sich von der programmiertechnischen Seite her nicht zu 100% sicher sollte man dieses Verfahren nicht verwenden !!**
\\
----
Docu: -- \\
Forum: --
**Autor:** [[http://planmatrix.de|K.Heermann]] //(flip-flop) (08.09.10)// \\
**CMS-Version:** >= V1.4.1 r282 \\
**Version:** V1.0 //08.09.10// \\
**Bedingung:** -> [[http://www.phpwcms-docu.de/confincphp_de.phtml|/config/phpwcms/conf.inc.php]] \\
* $phpwcms['allow_ext_init'] = 1;
----
\\