Webform mit JavaScript Prüfung und Error Message in Block
am 20.01.2010 - 16:25 Uhr in
Hallo zusammen,
habe mit Webform jetzt ein E-Mail Input Feld erstellt, dass in einem Block in der Sidebar integriert ist. Dazu habe ich jetzt... naja, mindestens mal 4 Fragen :)
1. Eine richtige E-Mail Validierung bekomme ich nur mit zusätzlichem PHP hin oder? http://drupal.org/node/279127#comment-1023342
2. Default soll im Feld "Bitte E-Mail eintragen" stehen, sobald man reinklickt, dann aber das Feld leer werden, damit man es beschreiben kann, wenn focus wieder weggeht ohne Befüllung, soll dann der Default Wert wieder erscheinen. Geht nur mit zusätzlichem jQuery Code oder? http://drupal.org/node/342183
3. Wenn es sich nicht um eine valide E-Mail Adresse handelt, hätte ich gerne, dass die Fehlermeldung in dem Block erscheint, aber $messages ist im Block nicht abrufbar... oder geht das sonst irgendwie?
4. Statt auf eine neue Seite zu gelangen, soll der Bestätigungstext im Block oder aber in einem Pop-Up gezeigt werden. Wie kann man das erreichen?
Ich hoffe, Ihr könnt mir helfen :)
Danke! Alessa
- Anmelden oder Registrieren um Kommentare zu schreiben
Zu Punkt 3... geht das mit
am 20.01.2010 - 20:08 Uhr
Zu Punkt 3... geht das mit Panels vielleicht?
Ist es möglich eine
am 21.01.2010 - 12:13 Uhr
Ist es möglich eine page-node-id.tpl.php für ein webform node zu erstellen und in diesen dann nur $messages und die webform zu integrieren und diesen node dann komplett in einen Block zu setzen? Bin über jede Hilfe dankbar!
Also ich meine wenn du bei
am 21.01.2010 - 12:43 Uhr
Also ich meine wenn du bei Webforms ein E-Mail-Feld ins Formular einbaust, dann wird das auch entsprechend validiert, sicher bin ich mir aber nicht.
Ist es möglich eine page-node-id.tpl.php für ein webform node zu erstellen und in diesen dann nur $messages und die webform zu integrieren und diesen node dann komplett in einen Block zu setzen? Bin über jede Hilfe dankbar!
hmmm klingt ziemlich konfus. Ein Variante etwas in der Art zu erreichen wären vielleicht folgendes:
Eventuell ließe sich das Formular über Webform Views Integration in einen Block packen den du dann in eine beliebige Region schieben kannst (Vorsicht, das Modul hat noch dev-Status). Zudem gibt es für Views jede Menge Modul, die Ajax in Views integrieren. Kannst ja mal auf drupal.org nach "Views Ajax" suchen, vielleicht findet sich da was.
Das sind alles nur Vermutungen, ich habs selbst noch nicht ausprobiert.
Die Validierung schließt
am 21.01.2010 - 13:15 Uhr
Die Validierung schließt nur ein, ob ein @ vorhanden ist und prüft nicht, ob auch eine .tld angegeben wird.
Ist konfus... :) Das Problem ist, dass ich die Error Message nicht irgendwo auf der Seite haben möchte, sondern innerhalb der Webform. Vielleicht muss ich es doch an Drupal vorbei programmieren, wenn ich zu keine Lösung komme. Aber werde mir Webform Views Integration mal anschauen.
E-Mail-Adressen ohne .tld
am 21.01.2010 - 13:56 Uhr
E-Mail-Adressen ohne .tld sind durchaus valide. Du würdest dich wundern, welche Adressen laut RFC 822 alle als valide durchgehen: http://ex-parrot.com/~pdw/Mail-RFC822-Address.html
Ob das ganze aus der Usability-Perspektive noch Sinn macht, sei einmal dahingestellt.
http://www.twitter.com/bspellmeyer
Zitat: Vielleicht muss ich
am 21.01.2010 - 14:18 Uhr
Vielleicht muss ich es doch an Drupal vorbei programmieren, wenn ich zu keine Lösung komme.
Naja an Drupal vorbei programmieren wäre sehr unvorteilhaft :-)
Mit Drupals Form API kann man wenn man etwas Erfahrung in PHP hat und nicht gerade sein erstes Modul erstellt ziemlich leicht ein Kontakt-Formular zusammenbasteln. Und das dann in einen Block zu stecken ist dann auch kein Problem. Das einzige was mir dabei Probleme machen würde wäre die angesprochene Ajax-Geschichte, also den Block neu laden ohne die Seite neu zu laden, aber wohl auch nur, weil ich sowas noch nie programmiert hab.
Ohne tld valide? Hmm... das
am 21.01.2010 - 15:00 Uhr
Ohne tld valide? Hmm... das ist aber nur für ein Intranet praktikabel oder? Naja, irgendwie will der PHP Validierungscode, den ich eingefügt habe, nicht anspringen, verstehe noch nicht warum.
Und dass an Drupal vorbei programmieren doof ist, weiß ich auch. Aber meine Kenntnisse reiche gerade so aus, um eine Form zu bauen, mit JavaScript und PHP auf Validität zu prüfen und dann in die Datenbank schreiben zu lassen. Ob ich mich wirklich mit der Form API auseinandersetzen möchte bzw. mir das zutraue, weiß ich noch nicht so recht.
Wenn sonst noch jemand Ideen hat, wäre ich dankbar, sonst muss ich echt mal schauen, wie ich das gelöst bekomme...