Ergebnis 1 bis 14 von 14

Thema: E-Mail Adresse "unsichtbar" an Formular übergeben

  1. #1
    Contao-Fan
    Registriert seit
    10.11.2010.
    Beiträge
    471

    Beitrag E-Mail Adresse "unsichtbar" an Formular übergeben

    Hallo zusammen,

    ich würde gerne eine Mitarbeiterliste mit dem Formular verknüpfen und zwar so, dass wenn ich in der List auf den Link ">> Email" klicke, sich die Seite mit dem Kontaktformular auftut und ich über das Formular dann der Person eine E-Mail senden kann.

    Also - die Mitarbeiter sind immer wie folgt dargestellt:

    Max Mustermann
    >> E-Mail

    Sonja Musterfrau
    >> E-Mail

    Klickt man auf ">> E-Mail" soll ein Formular erscheinen, über das ich der Person auf dessen E-Mail-Link ich geklickt habe, eine E-Mail schicken kann, ohne dass die eigentliche Adresse irgendwo sichtbar auftaucht.

    Wie setze ich so etwas am Besten um?

  2. #2
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Dem Link aufs Formular ein GET anhängen
    Code:
    formularseite.html?member=ID
    ID ist die ID des Members. Beim Formular in das Feld "Empfänger-Adresse*" das hier eintragen.
    Code:
    {{file::file-get-member.html5}}
    Datei in templates/file-get-member.html5. Darin
    PHP-Code:
    <?php

    $memberEmail 
    = \MemberModel::findById((int)\Input::get('member'))->email;

    echo 
    $memberEmail;
    Ungetestet!
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  3. #3
    Contao-Fan
    Registriert seit
    10.11.2010.
    Beiträge
    471

    Standard

    Hi Andreas,

    danke schon einmal für Deine Idee. Aktuell scheitert ers beim Eintragen von {{file::file-get-member.html5}} in das Feld E-Mail-Adresse.

    Bildschirmfoto 2016-09-15 um 12.57.38.png

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.111
    Partner-ID
    10107

    Standard

    Da brauchst du einen prepareFormData Hook, wo du je nach ausgewähltem Mitglied den recipient des Formulars setzt.
    PHP-Code:
    public function prepareFormData( &$arrSubmitted$arrLabels, \Form $objForm$arrFields )
    {
        
    $objForm->recipient = \MemberModel::findById(\Input::get('member'))->email

    Oder wenn du die Auswahl des Mitglieds als Teil des Formulars machst:
    PHP-Code:
    public function prepareFormData( &$arrSubmitted$arrLabels, \Form $objForm$arrFields )
    {
        
    $objForm->recipient = \MemberModel::findById($arrSubmitted['member'])->email


  5. #5
    Contao-Fan
    Registriert seit
    10.11.2010.
    Beiträge
    471

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Da brauchst du einen prepareFormData Hook, wo du je nach ausgewähltem Mitglied den recipient des Formulars setzt.
    PHP-Code:
    public function prepareFormData( &$arrSubmitted$arrLabels, \Form $objForm$arrFields )
    {
        
    $objForm->recipient = \MemberModel::findById(\Input::get('member'))->email

    Oder wenn du die Auswahl des Mitglieds als Teil des Formulars machst:
    PHP-Code:
    public function prepareFormData( &$arrSubmitted$arrLabels, \Form $objForm$arrFields )
    {
        
    $objForm->recipient = \MemberModel::findById($arrSubmitted['member'])->email

    Vielen Dank - kannst Du mir kurz erklären, wo ich das hinkopieren muss? Danke!

  6. #6
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Die Lösung von Spooky ist bestimmt die professionellere. Wenn du noch eine einfache ausprobieren möchtest, dann erstelle ein Hidden-Field, Feldname "cc", und trage den Inserttag dort ein. (Oder vielleicht sogar die Überprüfung auf korrekte Mail-Adresse über die DCA deaktivieren - irgendwie gewagt, ich weiß.)

    @Spooky
    Es wird immer erzählt, dass man GET-Parametern nicht trauen soll. Wäre es da nicht besser, das so aufzusetzen - mit (int)?
    PHP-Code:
    $objForm->recipient = \MemberModel::findById((int)\Input::get('member'))->email
    ...
    $objForm->recipient = \MemberModel::findById((int)$arrSubmitted['member'])->email
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  7. #7
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.111
    Partner-ID
    10107

    Standard

    Schaden tut es nicht, aber ein "DROP TABLE …" kann man ohne dem auch nicht einschleusen.

  8. #8
    Contao-Fan
    Registriert seit
    10.11.2010.
    Beiträge
    471

    Standard

    Hallo - mit dem CC-Feld wird leider im Quelltext die Adresse angezeigt. Würde die Variante mit dem Hook anders funktionieren?

  9. #9
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.111
    Partner-ID
    10107

    Standard

    Ja, der Hook setzt ja einfach den Empfänger des Formulars.

  10. #10
    Contao-Fan
    Registriert seit
    10.11.2010.
    Beiträge
    471

    Standard

    Ok, das hört sich gut an. Kannst Du mir vielleicht kurz erklären, was genau ich da machen muss?

  11. #11
    Contao-Urgestein Avatar von FloB
    Registriert seit
    19.06.2009.
    Ort
    Sonnensystem
    Beiträge
    1.618
    So long,
    FloB since Nov. 2007 +706P +115P and counting

  12. #12
    Contao-Fan
    Registriert seit
    10.11.2010.
    Beiträge
    471

    Standard

    Vielen Dank FloB,

    mit diesem Link habe ich es hinbekommen: http://www.contao-anleitungen.de/pos...er-senden.html

    Kann man mithilfe der Erweiterungen jetzt auch anhand der ID den Namen des Empfängers aus der Mitgliedtabelle auslesen? So dass man z.B. schreiben kann, an wen das Formular geschickt wird?

  13. #13
    Contao-Urgestein Avatar von FloB
    Registriert seit
    19.06.2009.
    Ort
    Sonnensystem
    Beiträge
    1.618

    Standard

    Sorry, kann ich nicht beantworten, da ich das bisher gar nicht eingesetzt hatte
    So long,
    FloB since Nov. 2007 +706P +115P and counting

  14. #14
    Contao-Fan
    Registriert seit
    10.11.2010.
    Beiträge
    471

    Standard

    Vielleicht geht das ja mit einem Codeschnipsel, wie ihn Andreas schon gepostet hat?

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •