neues formularmodul :: w3concepts.form.v1
-
- Beiträge: 62
- Registriert: Do 2. Jun 2005, 09:41
- Wohnort: BaWü
- Kontaktdaten:
Hallo zusammen,
habe auch die überarbeitete Version von Enigma im Einsatz in v4.5.3b modrewrite 1.0.5 von Stese.
Bei mir funktioniert bei eingeschaltetem modrewrite die Formular-Übermittlung nicht. Er lädt einfach die Seite nochmal.
Liegt wohl daran, dass in der Standard-htaccess von stese kein query-String etc. übergeben werden kann.
Kann mir da vielleicht jemand helfen?
habe auch die überarbeitete Version von Enigma im Einsatz in v4.5.3b modrewrite 1.0.5 von Stese.
Bei mir funktioniert bei eingeschaltetem modrewrite die Formular-Übermittlung nicht. Er lädt einfach die Seite nochmal.
Liegt wohl daran, dass in der Standard-htaccess von stese kein query-String etc. übergeben werden kann.
Kann mir da vielleicht jemand helfen?
-
- Beiträge: 62
- Registriert: Do 2. Jun 2005, 09:41
- Wohnort: BaWü
- Kontaktdaten:
Habe gerade gemerkt, dass auch bei ausgeschaltetem Rewrite nichts funktioniert. Die Seite mit dem Formular wird einfach nur neu aufgerufen. Keine Validierung, kein Versand. Garnichts. Obwohl alles schonmal funktioniert hatte. Ich hab keine Ahnung mehr, wo ich mit der Fehlersuche noch ansetzen soll. Vielleicht kann mir jemand helfen.
EDIT: Problem gelöst.
Es lag an einer regex-Regel der XHTML-Erweiterung von kptkip.
Die hat mir die Formular-Ausgabe fehlerhaft manipuliert.
EDIT: Problem gelöst.
Es lag an einer regex-Regel der XHTML-Erweiterung von kptkip.
Die hat mir die Formular-Ausgabe fehlerhaft manipuliert.
Syntax
Hallo, dieses Modul ist super. Ich habe nur eine kurze Frage: Kann mir jemand diese Syntax erklären.
Ich muß für die Textarea ein paar Charakters dazufügen. Wo schiebe ich die dazwischen? Muß ich wirklich jedes Zeichen eingeben, groß und klein? Oder geht das auch einfacher?
Code: Alles auswählen
// regular expression prüfungen
if (!empty($feld['valid']) && $feld['valid'] == 'simpletext' && !eregi("^[öäüéàèâêîça-z-]*$",$_POST["{$feld['name']}"])) return false;
...
Es würde genügen, bei der Funktion sendEmail(), die ganz am Anfang des Output-Scriptes liegt, eine zweite "mail"-Zeile einzufügen.
Also beim codemüsstest Du die Zeile mit "mail() .... phpversion());" nochmals einfügen. Dabei müsstest Du die Mail-Adresse ($this->email['adresses']) halt mit der From-Adresse ersetzen ($this->email['from']['email']).
Gruss
Thomas
Also beim code
Code: Alles auswählen
function sendEmail() {
$this->aufdroeseln($this->suppress('sent'));
$this->generateEmailMessage();
mail($this->email['adresses'],$this->email['subject'],$this->email['message'],"From: {$this->email['from']['name']} <{$this->email['from']['email']}>\nReply-To: {$this->email['from']['email']}\nX-Mailer: PHP/" . phpversion());
}
Gruss
Thomas
Sessionvariable übergeben
Hallo,
ich schreibe in einer anderen Seite etwas in eine sessionvariable die ich auch anstandslos auslesen kann. Diesen Inhalt würde ich nun gerne in ein Formularfeld schreiben oder wenigstens mit dem Senden der eMail aus dem Formular mit übergeben. Habe weiter oben shcon etwas gelesen mittels Übergabe via Post....
Eigentlich sollte das doch nicht so kompliziert sein. Hatte mir gedacht, dass ich einfach am Ende des Formulars
z.b. vor dem Echo form
einbaue. Dann sollte er meiner Meinung nach den Inhalt der Variabe $sessionvar als Vorschlagswert nehmen? Auch wenn ich unterhalb des Form einfach nur ein echo $sessionvar; mache, bekomme ich keinen Output. Wenn ich allerdings ein zweites Modul auf der Seite Plaziere, welches halt genau nur dieses echo $sessionvar; beinhaltet, bekomme ich den Inhalt anstandslos. Werde gerade noch verrückt.
Vielleicht hat ja jemand eine gescheite Idee!
ich schreibe in einer anderen Seite etwas in eine sessionvariable die ich auch anstandslos auslesen kann. Diesen Inhalt würde ich nun gerne in ein Formularfeld schreiben oder wenigstens mit dem Senden der eMail aus dem Formular mit übergeben. Habe weiter oben shcon etwas gelesen mittels Übergabe via Post....
Eigentlich sollte das doch nicht so kompliziert sein. Hatte mir gedacht, dass ich einfach am Ende des Formulars
Code: Alles auswählen
function formularAusgabe($sent = false) {
echo '<form action="" method="POST">';
echo '<input type="hidden" name="sent" value="true" />';
$formular = $this->form['form'];
$formulardaten = $this->formularInterpretation(&$formular);
$formular = split('###',$formular);
foreach ($formular as $formularteil) {
if (!empty($formulardaten["{$formularteil}"])) {
$this->formularFeld($formulardaten["{$formularteil}"],$sent);
} else {
echo $formularteil;
}
}
echo '</form>';
}
Code: Alles auswählen
echo "Mitarbeiter <input type=\"text\" name=\"session\" value=".$sessionvar.">";
Vielleicht hat ja jemand eine gescheite Idee!
N'abend,
gibt es die Möglichkeit, bei dem Modul ein Sicherheitscode-Feld einzubauen? Wenn ja wie müsste das aussehen?
Ich meine so ein Feld, in dem man einen Nummern- oder Buchstabencode von einer Grafik abtippen muss, bevor man das Formular abschicken kann.
Ich brauche so eine Abfrage, da über ein solches Formular scheinbar massiv gespammt wurde.
Schöne Grüße
Nebel
gibt es die Möglichkeit, bei dem Modul ein Sicherheitscode-Feld einzubauen? Wenn ja wie müsste das aussehen?
Ich meine so ein Feld, in dem man einen Nummern- oder Buchstabencode von einer Grafik abtippen muss, bevor man das Formular abschicken kann.
Ich brauche so eine Abfrage, da über ein solches Formular scheinbar massiv gespammt wurde.
Schöne Grüße
Nebel
-
- Beiträge: 213
- Registriert: Mi 9. Okt 2002, 21:24
- Kontaktdaten:
erweiterte hidden datenübergabe möglich?
ist es möglich eine latte an hidden fields zusätzlich in der mail zu übergeben...
ich arbeite mit dem frontenduser modul, so das wenn die user eingeloggt sind, auf verschiedene formular zugreifen können. die daten der user sind dann schon automatisch ausgefüllt.
Wie kann ich jetzt diese daten einfach in der email mit übergeben...
so das die beim empfänger komplett ankommen??
ich arbeite mit dem frontenduser modul, so das wenn die user eingeloggt sind, auf verschiedene formular zugreifen können. die daten der user sind dann schon automatisch ausgefüllt.
Wie kann ich jetzt diese daten einfach in der email mit übergeben...
so das die beim empfänger komplett ankommen??
Eine Anregung:
Bei der Funktion "formularAusgabe" diesen Code:durch diesen:ersetzen.
Dadurch wird als Aktion die aktuelle URL mit Queri-Strings (z.B. idcat) eingefügt. Methode "post" ist klein geschrieben und mit Name und ID ist das alles auch xhtml-kompatibel.
Eine dumme Frage:
Ich verifiziere eine Textarea gegen "textmitumbruch". Wenn ich aber Texte auf einer Webseite markiere oder aus einem Word kopiere und in die Textarea reinpaste, dann gibt das einen Fehler. Offenbar werden da noch mehr "Zeichen" reingepastet, z.B. Tabs usw. Hat dazu jemand eine Lösung?
Gruss
Thomas
Bei der Funktion "formularAusgabe" diesen Code:
Code: Alles auswählen
echo '<form action="" method="POST">';
Code: Alles auswählen
echo '<form action="'.'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'].'" method="post" name="contactform" id="contactform">';
Dadurch wird als Aktion die aktuelle URL mit Queri-Strings (z.B. idcat) eingefügt. Methode "post" ist klein geschrieben und mit Name und ID ist das alles auch xhtml-kompatibel.
Eine dumme Frage:
Ich verifiziere eine Textarea gegen "textmitumbruch". Wenn ich aber Texte auf einer Webseite markiere oder aus einem Word kopiere und in die Textarea reinpaste, dann gibt das einen Fehler. Offenbar werden da noch mehr "Zeichen" reingepastet, z.B. Tabs usw. Hat dazu jemand eine Lösung?
Gruss
Thomas
Hallo,ulisteinle hat geschrieben:...
Wie erzeuge ich einen "Senden" Button?
Sollte der automatisch generiert werden? Ich habe in deinem Output- Script nach "button" bzw. "submit" gesucht - Ohne Erfolg...
Ich habe also in den Output Code am Ende des Formulars (Funktion: formularAusgabe) einfach einen Submit- button reingeflickt...
...
wie genau muss der Code hierfür aussehen?
Danke
Gruß
Harry
es gibt im wesentlichen zwei mögliche lösungen:Thomas hat geschrieben:Ich verifiziere eine Textarea gegen "textmitumbruch". Wenn ich aber Texte auf einer Webseite markiere oder aus einem Word kopiere und in die Textarea reinpaste, dann gibt das einen Fehler. Offenbar werden da noch mehr "Zeichen" reingepastet, z.B. Tabs usw. Hat dazu jemand eine Lösung?
Gruss
Thomas
(1) die regex-prüfung so anpassen, dass auch tabs und andere, nicht sichtbare zeichen zulässig sind.
(2) unmittelbar nach dem absenden alle gegebenenfalls störenden zeichen mit str_replace entfernen (in der superglobalen variablen $_POST).
angesichts der tatsache, dass tabs und cr eigentlich ja unproblematisch sind (mindestens im regelfall), würde ich die regex-prüfung anpassen oder noch besser: gleich eine neue zusätliche prüfung für genau diesen fall schrreiben und integrieren.
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)
für den button?pingu2511 hat geschrieben:wie genau muss der Code hierfür aussehen?
Code: Alles auswählen
<input type="submit" value="senden">
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)
Du mußt in die Funktion "sendEmail()" nur folgende Zeile einbauen:
Dann müsste es gehen.
Code: Alles auswählen
$header .= "Bcc: deine@email.de <deine@email.de>\n";