Modulname:
---------------------------------------------------------------------------
Kontaktformular
Dynamische Empfängeradresse
Bechreibung:
---------------------------------------------------------------------------
Modul "Kontaktformular":
Mit diesem Modul lässt sich schnell ein einfaches Kontaktformular auf der
Seite einbinden. Es stehen dabei einzeilige Textfelder/ Passwortfelder,
mehrzeilige Textfelder, Selectauswahlen, Radiobuttons, Checkboxen und
Dateiuploads zur Verfügung. Bestimmte Felder können als Pflichtfelder
angegeben werden. Nachdem der User auf den Senden-Button geklickt hat, wird
der Inhalt des Formulars an die angegebene Email-Adresse geschickt.
Modul "Dynamische Empfängeradresse":
Ermöglicht von einer Seite aus auf das Kontaktformular zu linken. Es kann eine
Empfängeradresse definiert werden, die von der Adresse in der Konfiguration
des Kontaktformular- Moduls abweicht.
Autor(en):
---------------------------------------------------------------------------
Björn Brockmann
Benötigte Sefrengo Version:
---------------------------------------------------------------------------
>= 01.03.01 (Sefrengo 1.4 beta2)
Habe endlich mal Zeit gefunden eine neue Version des Kontaktformulars fertig zu machen.
Die größte Änderung im Modul hat amk freundlicherweise zum Modul hinzugefügt. Die Formularfelder lassen sich nun per Javascript beliebig sortieren. Amk hat auch eine Zwischenablagefunktion eingebaut, die es ermöglicht, dass Formularelemente beliebig an anderen Stellen wieder eingefügt werden können.
Das Kontaktformular erkennt nun automatisch das Snippet- Replacement Plugin, sofern es installiert ist. Bis jetzt war es nicht möglich, Emailtemplates mit Snippet Variablen zu füllen. Diese wurden nicht ersetzt.
Ansonsten gibt es viele kleine Änderungen und Bugfixes im Modul (siehe changelog), z.B. ist nun auch der Emailversand an mehrere Empfänger möglich, wenn diese aus einem Mehrfachselect kommen (Hatte mika sich ja gewünscht).
super!!! mucho merci!!!
mika
Hey das Tönt super! Freue mich schon das Teil zu testen...
thx
chregu
hm - irgendwie stell ich mich blöd an:
ich habe als formularfeld 1 eine selectbox mit mehrfachauswahl, die meine gesamten Adressen beinhaltet (die einzelnen adressen müssen mit | getrennt werden - Komma funzt nicht)
was muss ich in den maileinstellungen einstellen, dass aus diesem formularfeld die empfängeradressen zusammen gestellt werden? muss ich da mit dem Modul "Dynamische Empfängeradresse" was machen?
EDIT: Mit "Dynamischer Empfängeradresse" kann ich ja keine Mehrfachauswahl generieren. Jetzt frage ich mich, wie man in den Maileinstellungen festlegt, dass aus einem Formularfeld - und nicht aus dem Textfeld der Maileinstellungen - die Empfängeradressen geholt werden sollen. Soweit ich das überblicke kann ich aber nur "Empfängeradresse aus Textfeld (der Maileinstellung) und "Wenn möglich, dynamisch aus Seitencontent generieren" einstellen.
Oder hat das was mit der Beschreibung "+benutzername" bzw. "#gruppenname" zu tun? bin verwirrt, sorry.
michel
Bitte bedenke, das Du nur in der zweiten Email Daten aus dem Formular verarbeiten kannst. Gruppenname und Benutzername beziehen sich nur auf die erste Email. Und dort auf die Emailadressen, die in der Benutzerverwaltung als entsprechende Email hinterlegt sind.
Wenn das dann immer noch nicht funktioniert, würde ich mir das gerne anschauen. Bitte mit Backendaccess.
sodalla - jetzt hatte ich das we über kein dsl - jetzt gehts wieder.
also: wenn das formularfeld eine selectbox mit mehrfachauswahl ist, muss man nach wie vor die elemente mit "|" pipe trennen. komma funktioniert nicht. (auch nicht komma-leerzeichen, leerzeichen-komma)
wenn die validierung auf "kein" gestellt wird, meldet er, dass die mail verschickt wird - auch an verschiedene ausgewählte adressen, es kommt aber nichts an. die kontrollmail, die ich über "weitere e-mail-adresse" zuschicken lies, zeigt im header, dass die e-mail-adressen aus dem mehrfachselect nicht als empfänger übernommen werden.
hm. ich richte dir nen account ein und schick dir alles per pm
lg michel
Die Trennersymbol kannst Du in der Registerkarte "Sonstiges" unter "Trennersymbol - bei Feldern, wo mehreren Werte angegeben werden können" selber einstellen.
Das die Emails bei Dir nicht ankamen war ein Konfigurationsfehler Deinerseites. Du hast das Formular so eingestellt, das im ersten Formularfeld ein Multiselect war, wo man sich die Emailadressen raussuchen konnte und im zweiten Formularfeld die Absenderadresse.
Das bedeutet das Du bei den Maileinstellungen unter "Weitere Email Emailadresse Absender" eine 2 für das zweite Formularfeld und "Weitere Email Emailadresse Empfänger" eine 1 für das erste Formularfeld eintragen musst, damit es funktioniert.
Hallo
Habe eine Website über Validom validieren lasen im bereich des Formular-Tag erhalte ich eine Fehlermeldung. Siehe Screens.
Schmeiß einfach class="{transmitted}" aus dem Template, dann funktioniert es. Ich werde es in der nächsten Version korrigieren.
Ich glaube ich habe da noch einen Bug.
Wenn man das Beschriftungs- und Platzhalter Feld einfügt und über Styles Styleklassen Nur Beschriftung und Platzhalter zuweist, werden zwar die CSS-Klassen eingefügt aber am falschen Ort, siehe Screen.
Ich hätte eine Frage / Anregung zum Thema Validierung:
Da die Spambots ja automatisch alle Formularfelder füllen die vorhanden sind habe ich mir überlegt ob man eine Validierung hinzufügen könnte <wenn Formulardaten gefüllt>.
Meine überlegung ist folgende:
Das gewünschte Formularfeld mit display:hidden versehen ( nicht sichtbar für User was aber ein Spambot nicht weiß)
wenn dieses Formularfeld gefüllt wird dann ist klar von wem die ganze sache erstellt worden ist.
Gibt es die Möglichkeit eine solche Validierung zu erstellen?
LG David
Nein, hast nichts falsch gemacht, nur die Labels werden aber automatisch vom System vergeben, da kannst Du manuell nicht eingreifen.
Ach so, ich hab schon im Code des Moduls danach gesucht.
Ich danke dir für die Rückmeldung.
Hallo,
wenn ich das richtig sehe ist es mit diesem Modul nicht möglich den aktuell eingeloggten Usernamen mit in den E-Mail-Text rein zu bekommen, oder?
Ich bin gerade auf der Suche nach einer einfachen Möglichkeit, womit eingeloggte User Nachrichten an den Seitenbetreiber schicken können. Dafür wäre es schön, automatisch den Usernamen mit auszulesen. Gibt es solch eine Möglichkeit schon?
Gruß,
Oliver
Da wirst du selber die Mailsendefunktion erweitern müssen, damit dies klappt. Nötige variablen für den aktuell eingeloggten User findest Du hier: http://wiki.sefrengo.org/index.php/Entwicklervariablen
Na dann mache ich das Doch mal:
Einfügen ab Zeile 918:
wie ist das bei dem kontaktformular gedacht wenn man "optionsfelder" auswählt dass man z.b. 2 radiobuttons gruppiert?
also z.b. die auswahl "herr" und "frau" und natürlich ist nur eins möglich.... naja billige sache in html.... aber ich blicks nicht wie das da gehen soll da das system ja den "name" vorgibt... beide felder müssten den selben namen haben damit das mit der auswahl klappt..
ok ich stand ein wenig auf der leitung.... ich meinte nur das was man bei Defaultwert eingeben kann z.b. herr, frau ... das war mir unklar....
Ist es möglich über ein Kontaktformular ein Dokument anzuhängen wie das bei einem Normalen Mailprogramm möglich ist?
Es gibt ja die Möglichkeit Dateien hochzuladen. Dann muss man aber immer über Backend->Dateimanager die Daten abholen etwas umständlich.
Gruss
1. FR
{label}-element im "Template Captchaelement"
"Template Captchaelement" textarea vergrößern (höhe).
ODER
{image}- & {hiddentoken}-element im Template Elementcontainer
(prinzipiell könnte dann das "Template Captchaelement" wegrationalisiert werden)
............
warum?
bestimmte gestalterische dinge sind aktuell nicht möglich. bspw:
captcha-bild <div>captcha-input-label, captcha-input</div>
2. FR
Template für den Submit-Button.
............
warum?
nicht immer ist ein input-form-element als submit gewünscht,
das button-form-element ist manchmal vorteilhaft ... oder ein simpler link-tag mit js-funktionalität
Wie es scheint, kann man im Kontaktformular in einem Defaultwert* Feld
keine Snippet Replacement Sprachvariablen vergeben, ist das richtig?
Wenn ja währe das ein FR für eine kommende Version.
Funktioniert bei mir nun auch einwandfrei. Sorry für die aufregung.
Es wahr ein leerschlag zuviel.
Gruss
ich habe ein paar probleme mit checkboxen. kann das hier jemand bestätigen?
1. egal ob checkbox oder checkbox, vordefiniert. die checkbox ist immer aktiv. notlösung: einen leerschlag im default-feld
2. eine checkbox gibt immer ein leeres label aus:
zu 2.
in der checkbox wird aus
IMO musst du defaultwert* (ich bin gewählt ) einen eintrag machen.
dieser wird
a ) checked="checked" bei checkbox entfernen
b ) bei der email übertragen
ah, alles klar, funktioniert :-)
danke, stand da wohl auf dem schlauch, denn ohne defaultwert kann auch nichts übermittelt werden
gruss andi
Meine ersten Gehversuche mit dem Kontaktformular 2.0.0 sind gelungen und das alte mit dem Formbuilder erstellte Kontaktformular könnte ersetzt werden.
Nun wollte ich das Modul Kontaktformular 2.2 uploaden aber ich erhalte immer die Meldung:
"Es wurde keine gültige *.cmsmod- Datei hochgeladen"
auch nach einem erneuten Downloaden und entpacken der ZIP-Datei geht es nicht.
interessanterweise geht jedoch das uploaden von "Dynamische Empfängeradresse" sowie auch von anderen Modulen.
Was kann ich nocht tun?
Vielleicht kommst du hier ein wenig weiter: http://forum.sefrengo.org/index.php?showtopic=767
@Bjoern oder an den Entwickler
Habe noch einen Kleinen Fehler entdeckt. Die Styleklasse des Optionsfeld wird nicht übernommen.
Um den Bug zu beheben muss die Zeile 412 verändert werden.
In aktueller Version:
Wie kann man denn das Default-Feld bei Radio-Buttons festlegen? Ich hab im Quellcode was mit dem "@@" gefunden, aber was wird erwartet?
gute frage, eigentlich dürfte der radio-button «checked="checked"» nicht standardmässig anfügen.
entweder müsste dieser generell entfernt werden. dann könnte man unter opt. atributte «checked="checked"» eintragen.
oder dann müsste es wie bei der checkbox 2 elemente geben (vorselektiert oder nicht).
... dritte möglichkeit wäre, ich habe etwas übersehen :-)
gruss andi
Frage Defaultwert bei Radiobuttons:
Hab mal im Quellcode nachgeschaut. Das Feature "Defaultwerte bei Radiobuttons setzen" gibt es noch nicht. Was Du mal probieren kannst, in den QUellcode gehen und suchen
sali björn
dieser http://forum.sefrengo.org/index.php?s=&showtopic=1571&view=findpost&p=14146 wäre auch mal was dringendes. ansonsten bekommt jede checkbox zwei labels, was nicht sinngemäss sein kann.
gruss andi
Zufall oder Problem?
Seitdem ich Kontaktformular 2.2 verwende erhalte ich sinnlose Mail und möglicherweise auch vermehr Spammail. Zudem konnte ich in der Statistik Besucher feststellen die das Kontaktformular ausfüllten bei mir aber kein Mail eintraf.
Mit dem Kontaktformular sind Fantasie-Absenderadressen möglich. Der Formbuilder macht dies unmöglich weil die Domain auf korrekte Schreibweise prüft. Darum hatte ich mit dem Formbuilder keine sinnlosen Mail und möglicherweise auch kaum Spams.
Frage:
Bietet der Formbuilder mehr Sicherheit oder ist das Zufall?
Wäre es nicht sinnvoll auch das Modul Kontaktformular mit einer Domainprüfung zu egänzen?
Ich habe Probleme mit Beistrichen in den kommerseperierten Angaben:
Wie soll ich vorgehen wenn in der Angabe eines Wertes ein Beistrich stehen soll
( HTML wird nicht interpretiert da es vor der Ausgabe umgewandelt wird z.B. ‚ )
LG, David
Gab es da nicht eine Einstellung die das Komma gegen ein anderes Zeichen austauscht? Oder war das im contentflex?
Ich habe leider nichts gefunden
Hierbei stellt sich die Frage- was machen wenn man in der Angabe sonstige HTML elemente benötigt
(sowie <strong> oder <br>)
bei der ausgabe von optionfelder erhält jeder darin enthaltene «radio» die gleiche id und der gleiche name.
leider nicht valid. könnte man das noch ändern?
kennt sich jemand damit aus und kennt die ursache?
gruss andi
vll. könnte man dafür nur im element radio den wert der value an die id hängen
id="'.$element_name.'_'.$this->_htmlentities($v_key).'"
damit es eindeutig wird. <<keine ahnung obs dann valide ist, habs nicht probiert>>
probier mal
id="'.$element_name.'_'.$k.'"
vielen dank. langsam wird das ganz schön unübersichtlich mit den kleinen bugfixes :-)
gruss andi
Hallo,
ich hab ein Problem mit dem Kontaktformular, sowohl mit dieser Version als auch der Standardversion ist mir das passiert.
Wenn ich weitere Felder dazuaddiere und auf mehr als 12 oder 13 komme dann kann ich das nicht mehr speichern/übernehmen, sondern lande beim Klick auf speichern oder übernehmen automatisch wieder beim Login-Screen und darf mich wieder neu einloggen. Hatte danach auch Probleme das angepasste Kontaktformular wieder aus dem Template herauszubekommen. Sobald ich es deaktivieren wollte oder herausnahm und das Template speichern wollte passiert genau dasselbe -> Backend-Login-Screen.
Die Änderungen sind danach natürlich auch nicht mehr da. Weiß jemand woran das liegen könnte und wie man das umgehen kann?
(Wollte jetzt nicht extra ein neues Thema aufmachen, hoffe das ist ok hier, sonst mach ich auch gerne nochmal woanders eins auf.)
Gruß,
Martin
Könnte es vielleich sein, dass die Ausführungszeit für Skripte auf deinem Server zu kurz eingestellt ist? Ich hab zwar nicht soviel Ahnung davon, aber es klingt für mich so als wenn es dir Kiste schlichtweg zu lange dauert und er dich deshalb rauskickt. In der http://www.gooof.de/2005/11/22/phpinfo/ findest du eine Zeile die die execution time angibt.
max_execution_time ist eingestellt auf 90.
Er braucht ja nie solange. Sobald ich auf "speichern" oder "übernehmen" klicke zeigt er mir den Login-Screen. Und es ist egal ob ich nacheinander +3, +3, +3, +3 mache oder (beim Kontaktformular 2.2. ja möglich) einmal +12 .. immer dasselbe.
hallo zusammen
evtl. hat das etwas mit http://forum.sefrengo.org/index.php?showtopic=963&hl=Login-Screen++lande zu tun?
gruss andi
Jau, der Suhoshin-Patch ist da tatsächlich installiert. Wieder was gelernt. Mal sehen, ob man das irgendwie geregelt bekommt. Danke schön erstmal
hallo zusammen
aus semantischen wie auch optischen gründen möchte ich ein komplexeres formular in verschiedene <fieldset> teilen.
unter «template formularstart/-ende» kann ich das fieldset nur für ein komplettes formular definieren. unter template elementcontainer xx nur für die einzelnen elemente.
stehe ich nun voll auf dem schlauch oder fehlt ein template à la «umschliessender elemtcontainer» wie bei contentflex?
gruss andi
Bei mir werden in einem utf-8-Projekt die Umlaute in der Benachrichtigungs-Mail nicht dargestellt. Kann mir jemand helfen?
http://forum.sefrengo.org/index.php?showtopic=1682 konnte ich den Fehler auch nicht beheben.
aus welchen feld sind diese umlaute ? textarea !?
könnte ich so nicht bestätigen funktioniert ohne probleme.
Es handelt sich um die Felder Name (Einzeiliges Textfeld) und um Mitteilung (Mehrzeiliges Textfeld).
Hab mal noch einen anderen Test gefahren. Beim Webmail von meinem Hoster erscheint die Mail korrekt, aber bei mir in Outlook nicht!
auch bei einem einzeiligen textfeld, so z.B. name habe ich die probs. nicht.
bei outlook kann ich dir nicht helfen, fehlt mir der plan
moin moin,
ich brauche ein kontaktformular mit 2 spalten und den elementen darin verteilt.
geht das irgentwie?
z.beispiel:
NAME ..(2.spalte) NACHICHT
EMAIL
TELEFON
thor
sali thor
hatte dazu mal ein testcase, weil dies schon einmal hier «gefordert» wurde. leider jedoch nicht mehr in meinem «sortiment», im grunde aber sehr simpel – sofern man css beherrscht.
1. 2 templates erstellen
2. allen positionen der ersten spalte 1. template zuweisen
3. allen positionen der zweiten spalte 2. template zuweisen
4. das 2. template via position: relative an die gewünschte stelle rücken
5. für das alles umgebende div (o.ä.) negativen margin vergeben
vielleicht kannst du damit etwas anfangen.
gruss andi
damit es für eine spätere (überarbeitete) version nicht abhanden kommt.
beim benutzen von onSuccess, ist
$this->addon->onSuccess($this->stack);
auskommentiert.
Servus Zamma,
mein Provider hat die Sendmail-Funktion nur noch auf interne Mail-Accounts beschränkt. Nun muss ich den Benutzernamen ("+benutzername") und das Passwort als Absender im Kontaktformular angeben. Nur wie mach ich das??? Folgende Tests hab ich schon durchprobiert - ohne ERfolg:
+benutzername:Passwort
benutzername:Passwort@somewhere.de
Wie muss ich das angeben? Ist das ähnlich wie ftp-User über Url???
thx Michel
Nochmal - ich hab mich vorher unlogisch ausgedrückt: "+benutzername" bezieht sich ja auf angemeldete SF-Benutzer.
Ich müsste mit dem Kontaktformular (und Formbuilder auch noch) mich mit folgendem Skript beim Mailserver des Providers authentifizieren (hab ich vom Provider bekommen).
<<ich denke mal ohne das zu probieren
so auf den ersten blick musst du nicht nur die betreffenden module sondern auch die api ändern.
so das du über einen anderen $driver (smtp) / Mail_smtp($params) rauskommst.
keine ahnung ob das aktuell mit der api ohne änderung funktioniert.
merci dir erst mal für eine antwort.
Hat sonst noch jemand eine Idee, wie ich das Problem umschiffen kann?
Michel
Ich habe Probleme mit dem Versand einer zweiten E-Mail (Email 2).
Trotz Aktivierung geht nur die Email 1 raus. Im Debugmodus ist auch nur die erste sichtbar.
Logdatei sagt folgendes aus:
Hallo Rainer,
ich habe mich neulich eine dreiviertel Stunde mit dem gleichen Problem rumgeschlagen, bis ich feststellte, dass ich bei der zweiten Mail die Empfängeradresse bei Absender eingetragen habe.......
Hallo Taturo,
das war bisher der beste Tipp, den ich im sf-Forum bekommen habe…
Wer lesen kann, ist ganz klar im Vorteil!
Vielen Dank für die Augenöffnung
Hallo,
Ich war für ein Projekt gezwungen eine Selectbox für die Mailempfänger zu erstellen.
Leider bietet das Modul ja nur bei der zweiten Mail die Möglichkeit die Mailadresse aus einem Formfeld zu nehmen.
Ich habe deshalb das Modul erweitert.
Such im Modul:
Future-Request:
Könnten wir nicht bei den Maileinstellungen noch eine Option "Weiterverarbeitung" hinzufügen (wie beim Formbuilder)?
Somit könnte man Daten an eine DB oder an ein Skript weitergeben. Evtl auch noch ein Textfeld hinzufügen, in dem man das Skript direkt einfügen kann!
Oder sollten wir das Kontaktformular etwas entschlacken und eine neue Formbuilder-Version herausbringen?
Ist es möglich den Dateiupload nur im Dateisystem abzulegen und nicht per Mailanhang zu versenden ?
Es soll nur eine Nachricht gesendet werden ala
Hallo Leute ich hab dem Kontaktformular noch 4 weitere Zwischentemplates hinzugefügt also insgesamt 8 . (Wenn es wer benötigt)
Ich hatte wieder einmal den Fall das ich mit 4 Zwischentemplates nicht ausgekommen bin.
Sollte soweit alles funktionieren.
Kontaktformular.cmsmod ( 135.84KB )
: 10
Lg David
Hallo zusammen,
Wir haben für ein Projekt das Kontaktformular mit einer Option zur Speicherung in einer Datenbank ausgerüstet.
Mach doch bitte einen eigenen Thread mit der neuen Version auf Ich verschiebe dann die alte Version ins Archiv.
LG sascha
Die Umlaute der Konfiguration sind nach dem Update zerschossen:
@Toni: Angesichts der Tatsache, dass es sich um ein Kernmodul handelt wäre es eh sinnvoll es als Alpha/Beta Version zu publizieren. Die Kernmodule werden ja quasi von Björn und Co authorisiert in den stable Status erhoben. Die Grundbitte bleibt aber, mach doch bitte einen neuen Thread auf und pack da die neue Version rein. Am Ende hier unten geht das unter!
LG sascha
Hallo,
wenn ein "Nur Beschriftung" Feld eingefügt wird kommt bei der Valedierung ein
warning reference to non-existent ID "go_frm300" da nur ein <span eingefügt wird und er die ID für ein <input erwartet.
lässt sich das ändern denn "nur Beschriftung" braucht keinen <label for="go_frm300"?
moin,
da bin ich auch schon drüber gestolpert und wäre auch wärmstens an einer validen Lösung interessiert.
Grüße Carsten
Hallo zusammen
Wenn ich das Formular ausfülle und absende, kommt folgende Fehlermeldung:
niemand?
Empfängermail eingetragen? Mailversand aktiviert? Absenderadresse angegeben?
Hallo zusammen,
kann man die Felder irgendwie beliebig anordnen? Gibt´s eine Möglichkeit die Felder manuelle z.b. via CSS Styles zu positionieren? Wäre gut wenn es so eine Möglichkeit geben würde z.B. mittels Variablen {Feld x} sodass man sich auch richtig schön angeordnete Formularen erstellen kann.
Danke für die Antwort!
Richtig frei positionieren geht nicht. Du hast aber bei jedem Formularfeld die Möglichkeit ein Template (Elementcontainer 1-4) zuzuweisen. Diese kannst Du im Tab "Meldungen & Templates" beliebig konfigurieren. Z.B.:
Template Elementcontainer 1
Ok danke für den Tipp. Dann werde ich es über diesen Weg anpassen!
Ist vielleicht ne Idee falls es noch ein neues Update geben soll. Vielleicht kann man die Felder dann per ID ansprechbar machen.
Gruß
Edit: um die Elementcontainer kann man auch kein komplettes div legen, dass alle Elementcontainer1 .. umrandet oder?
*staubwisch* *hust*
Wenn ich mehrere Formulare auf der selben Seite platziere, werden ja mehrere IDs (go_frm100 etc) mehrfach verwendet. Dadurch kommt es beim validieren des Formulars zu Fehlermeldungen, obwohl das Formular erfolgreich abgeschickt wurde. Also Beispiel: Formular 1 und Formular 2 sind auf der selben Seite. Ich trage Daten in Formular 2 ein und schicke sie ab. Da ich in Formular 1 nichts eingegeben habe, erscheint in Formular 2 Fehlermeldungen, obwohl die Mail korrekt versendet wurde.
Gibt es dafür eine brauchbare Lösung? Ich habe jetzt beim zweiten Formular soviel deaktivierte Felder oben angefügt, wie das erste Formular an Felder hat, so das diese IDs nicht mehrfach vergeben werden, aber das ist auf Dauer ja keine Lösung. Btw beide Formulare haben im FORM-Tag eine andere ID aber das alleine reicht ja nicht.
Unterstützt von Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)