Druckversion des Themas

Hier klicken um das Topic im Orginalformat anzusehen

Forum Sefrengo.org _ Module _ Kontakformular 2.0.1 + Dynamische Empfängeradresse

Geschrieben von: bjoern Tue. 17. April 2007, 19:13

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)

CODE
Changelog
------------------------------------------------------------------------------------------------

Changelog legend:
# -> Bug Fix
+ -> Addition
^ -> Change
- -> Removed
! -> Note

Current versionnumber is 02.00.01 - released 17.04.2007
------------------------------------------------------------------------------------------------
# cc and bcc emails would not send
# option save fileuploads in filemanager doesn't work
# typo in config: capture => captcha
# get emailadress by fieldnumber for email2 does not work correctly


Current versionnumber is 02.00.00 - released 16.11.2006
------------------------------------------------------------------------------------------------
+ Configtabs
+ Uploads can be saved in filemanager
+ New Mailclass
+ Possibility to send second email
+ ...many new features


Current versionnumber is 01.07.04 - released 03.01.2006
------------------------------------------------------------------------------------------------
+ Added possibility to give submitted form a different class or id


Current versionnumber is 01.07.03 - released 13.10.2005
------------------------------------------------------------------------------------------------
^ Add UTF-8 support
^ change vars: $dedi_db to $cms_db, $cfg_dedi to $cfg_cms, $dedi_side to $cms_side, $dedi_mod to $cms_mod


v 1.7.0
------------------------------------------------------------------------------------------------
+ add tpl vars {textareafromdynamic}, {textfromdynamic} - used by Modul "dynamische
Empfängeradresse"
+ possibility to set defaults for {textareafromdynamic}, {textfromdynamic}
+ new template to generate an individual emailtext
# some bugfixes


v 1.6.1 (13.3.2005)
------------------------------------------------------------------------------------------------
# Fehler bei "allow_asp_open_tag=on in der php.ini" behoben


v 1.6.2 (13.3.2005)
------------------------------------------------------------------------------------------------
# PHP- Fehler bei verschicken von Dateiuploads
# Hockommas in Label- und Formularelementattributen wurden escaped


v 1.6
------------------------------------------------------------------------------------------------
+ add field attachments
+ new templaterow mechanism

v 1.5
------------------------------------------------------------------------------------------------
+ new fields password, select, select multiple, radio, checkbox
+ error message for every single field
+ optional attributes for every single field


v. 1.01
------------------------------------------------------------------------------------------------
- fix checkboxen wurden nicht validiert
- fix checkboxfelder wurde nicht XHTML- Konform geschlosssen
- fix im Label wurden einfache Hockommas (') escaped
- fix css- Angabe für Submitbutton wurde nicht interpretiert


v. 1.0
------------------------------------------------------------------------------------------------
- fix div und fieldsetbug (Danke an Olaf)
- reply to Bug in der verschickten email behoben


v. 0.99.2
------------------------------------------------------------------------------------------------
- Absenderadresse kann nun aus einem Formularfeld generiert werden
- Es kann ausgewählt werden, ob das Formular ein fieldset enthalten soll
- Beschriftung für fieldset-legend kann angegeben werden
- Formularfelder werden mit einem label ausgestattet
- Absenderadressenbug korrigiert
- Qoutesbug bei magic_quotes_gpc = 1 behoben


v. 0.99.1
------------------------------------------------------------------------------------------------
- Es wurde keine email versendet
- Bei Pflichtfeldern, die nicht mit einem Stylesheet formatiert wurden, fehlte das ' *'


 Kontaktformular_V02_00_01.zip ( 27.04KB ) : 121
 

Geschrieben von: gunwalt Wed. 18. April 2007, 09:03

Das Problem, das http://forum.sefrengo.org/index.php?showtopic=1040 geschildert, scheint erledigt.

Ein Feld scheint allerdings nicht zu versenden. Wenn man im Bereich Maileinstellungen pro Feld nur eine Emailadresse eingibt, kann das Formular 5 Mail an 5 verschiedene Empfänger verschicken. Bei mir kommen allerdings nur vier Mail an. Es fehlt die, die im Bereich Email 2 an erster Stelle stellt. Da alle Mails an den gleichen Server gehen, kann ich auschliessen, das ein Spamfilter greift.

Im Bereich Maileinstellungen zwei Tippfehler
Beeffzeile/ Subject der Email
Formulardeldnummer

Geschrieben von: bjoern Wed. 18. April 2007, 17:23

Schick mir doch bitte mal das Modul mit Deiner Konfiguration.

Geschrieben von: gunwalt Wed. 18. April 2007, 18:07

ZITAT(bjoern @ Wed. 18. April 2007, 18:23) *
Schick mir doch bitte mal das Modul mit Deiner Konfiguration.

ist unterwegs

Geschrieben von: STam Wed. 18. April 2007, 22:55

Also bei mir behebt dieser Bugfix garnix... (oder ich habe eine alte SF-Version 01.03.01 ?)
Der eigentliche Bug liegt wohl in der Datei: backend\API\UTILS\class.SF_UTILS_Mail.php
Dort wird ab Zeile:152 'to', 'cc' und 'bcc' gesetzt:

QUELLTEXT
//set to
if ( count($this->adresses['to'] > 0) ) {
    $to = implode(', ', $this->adresses['to']);
} else {
    return false;
}

//set cc              
if ( count($this->adresses['cc'] > 0) ) {
    $mime->addCc(implode(', ', $this->adresses['cc']));
}

//set bcc              
if ( count($this->adresses['bcc'] > 0) ) {
    $mime->addBcc(implode(', ', $this->adresses['bcc']));
}
...
Wenn man sich den Code anschaut sieht man es eigentlich schon...
if ( count($irgendetwas > 0) ) {} ist mal falsch!

Deswegen erzeugt die PEAR::Mail() auch nicht geschlossene (also ungültige) Cc: und Bcc:.
Das erzeugt dann bei einigen Mailservern Fehlermeldungen:
SMTP server response: 501 Bad address syntax - Postfix (wie bei diesem http://forum.sefrengo.org/index.php?showtopic=1030)
oder
SMTP server response: 511 sorry, you must specify a domain - Qmail

Debug von PEAR:Mail():
QUELLTEXT
mail(
'stam@lanworld.de',
'Ihre =?utf-8?Q?get=C3=A4tigten?= Eingaben',
'test: false ,
MIME-Version: 1.0 From: stam@lanworld.de Cc: Bcc: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit'
)


Bugreport http://forum.sefrengo.org/index.php?showtopic=1051.

Gruß

Geschrieben von: STam Wed. 18. April 2007, 23:54

Auch fehlt eine Fehlerbehandlung, was mir erst zum Schluß aufgefallen ist sad.gif
Egal ob Fehler (Mail nicht versendet!) oder nicht, es kommt immer:

ZITAT
Vielen Dank, die Daten wurden versandt


Gruß

Geschrieben von: STam Thu. 19. April 2007, 00:16

Und noch etwas... naja gehört wohl http://forum.sefrengo.org/index.php?showtopic=1050.

Gruß

Geschrieben von: mrtt Thu. 24. May 2007, 17:23

Moin,

ich glaube ich hab einen Fehler im Kontaktformular 2.0.1 (SF 1.4 Final) gefunden.
Die Templatevariablen {messageblock} wird immer ausgegeben, auch wenn keine Erfolgs- oder Fehlermeldung vorliegt.
Es wäre wünschenswert, dass das Element nur ausgegeben wird, wenn wirklich eine Meldung vorliegt.

Das sieht ein wenig komisch aus, wenn im Layout auf einmal zwei Horizontale Linien <hr /> ohne Grund auftauchen (default config).

EDIT:
Selectbox: Bei einer Fehlermeldung nach dem Absenden wird die gewählte Option der Selectbox mit dem Attribut selected versehen.
XHTML-Konform wäre es, wenn dort selected="selected" stehen würde.

QUELLTEXT
<option value="Ja" selected >Ja</option>

sollte sein
QUELLTEXT
<option value="Ja" selected="selected" >Ja</option>

Sebastian

Geschrieben von: bjoern Thu. 24. May 2007, 21:39

Danke, werde ich mir für die nächste Version auf jeden Fall mal anschauen.

Geschrieben von: pawel Sat. 21. July 2007, 20:36

Ich hab mal etwas für mich geändert:

Frontend
168 //template required notice
169 var $tpl_label_required_notice = '<strong>*</strong>';

Der Asterisk wurde hervorgehoben, einmal für die Screenreader und per css hab ich auch noch Gestaltungsmöglichkeiten.

Hier mein Templatevorschlag:
{usermessage}
{formstart}
<fieldset><legend>Fragen ans uns:</legend>
{formelementblock}
</fieldset>
<p>Mit Sternchen (*) gekennzeichnete Felder m&uuml;ssen ausgef&uuml;llt werden.</p>
<p><button type="submit" id="Senden" name="Senden">Senden</button></p>
{formend}

Interssant daran ist button.

Geschrieben von: amk Mon. 23. July 2007, 10:52

button - nun interessant ... ist vielleicht warum's so selten genutzt wird!? wink.gif

Geschrieben von: saschapi Mon. 23. July 2007, 11:05

Button war mir (auch?) gar nicht geläufig. Ist aber sogar relativ http://de.selfhtml.org/html/formulare/klickbuttons.htm#modern. smile.gif

Geschrieben von: STam Mon. 23. July 2007, 12:59

Benutze ich ganz gerne, zumal der recht vollständigen http://de.selfhtml.org/html/referenz/elemente.htm#button.

Gruß

Geschrieben von: pawel Fri. 27. July 2007, 17:48

Button ist semantisch nicht zu verwechseln rolleyes.gif , ein Sendebutton ist eigentlich kein Eingabefeld oder?

Geschrieben von: smail Thu. 16. August 2007, 11:03

Hab mir eben mal das Modul angesehen und es ist cool cool.gif

Ich hätte aber noch eine Frage: (vielleicht übersehe ich grad was rolleyes.gif ) was von den o.g. Problemen existiert noch und was nicht?

Gruß
Jan

Geschrieben von: mistral Thu. 16. August 2007, 21:20

bei mir funktioniert der Dateiupload auch nicht

Geschrieben von: Pate Wed. 22. August 2007, 09:34

Hallo,

ich möchte die Daten, die über das Kontaktformular gesendet werden in eine Datenbank speichern. Klappt auch soweit wunderbar, indem ich ein PHP-Script in die Seite einbinde, wo "formSubmitted" = true abgefragt wird und dann die MySQL-Abfrage ausgeführt wird.
Nur habe ich das Problem, dass, wenn Pflichtangaben-Felder ausgelassen werden, wonach die Meldung kommt "Bitte überprüfen Sie Ihre Formulareingaben: .." die Daten - logischerweise, weil formsubmitted ja auch hier "true" ist - auch schon die Datenbank gespeichert werden.
Gibt es da eine Variable, mit der ich (aus einem eingebundenen PHP-Script) den finalen transmitted-Status abfragen kann (wenn auch die E-Mail gesendet wird)?
Oder muss ich jedes Pflichtfeld einzeln überprüfen, bevor der Insert ausgeführt wird?

Gruß & Danke schonmal smile.gif

Geschrieben von: David Wed. 5. September 2007, 11:10

Hallo,

wenn ich auf Senden klicke, bekomme ich immer folgenden Fehler:

QUELLTEXT
Fatal error: Call to undefined method: pear_error->send() in .../backend/API/UTILS/class.SF_UTILS_Mail.php on line 181

Bei mir kommt Sefrengo 1.04.00 zum Einsatz, den Bugfix von Stam habe ich schon berücksichtigt, hat leider nichts gebracht...
Zugang zur Phpinfo gibt es http://www.sieberer-kochschule.de/backend/phpinfo.php.

Gruss David

Geschrieben von: muhkuh Thu. 11. October 2007, 14:44

Ich glaube auch nen Bug entdeckt zu haben. Ich wollte am Modul über die Ordnerkonfiguration ein paar Änderungen durchführen, die aber auf der Seite nicht übernommen wurden. Erst als ich die Änderungen über Design > Module > Modul konfigurieren vorgenommen hatte (mit einem Häkchen bei "Für alle Seiten übernehmen, die...") wurden diese im Frontend auch übernommen.

Geschrieben von: hylli Thu. 11. October 2007, 16:33

Ähm, hat die Seite in der Seitenkonfiguration auch das "Ordnertemplate" oder nur eben das Template mit dem Kontaktformular zugeordnet?!?

Hylli

Geschrieben von: muhkuh Thu. 11. October 2007, 16:53

Und da sag mal einer, dass man aus seinen Fehler nicht lernen kann. Jetzt muss ich zwar die halbe Seite wieder mit Inhalt füllen, aber du hast den Fehler gefunden, den ich gemacht habe, der Bug sitzt also - wieder einmal - vor dem Bildschirm.

Geschrieben von: toto Sat. 13. October 2007, 07:47

Guten Tag,

ist es möglich mit dem Formular ein Feld einzurichten wo steht. [ ] Ja, sende mir eine Kopie der Nachricht. Sodaß der Formularschreiber eine Kopie erhält?

Danke für Hilfe

Unterstützt von Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)