Zum Inhalt springen

bettercontact

Erstellt am 28. Juni 2010 · 30 Antworten · letzte Antwort am 17. Oktober 2011 · Seite 2 von 2

Tags: Frage

speedprogs ·

Hallo Peter (lisardo),

vielen Dank, das freut mich sehr. Dann wünsche ich dir viel Spaß beim Testen. Falls du jedoch auf einen Datei-Upload angewiesen bist, solltest du weiterhin mailformplus einsetzen. Dieses Feature kommt bei meiner Extension erst mit der nächsten Version (ausgenommen Bugfix-Versionen).

Beste Grüße
--
Kai

Nicole87 ·

Hallo Kai!

Vielen Dank für die ausführliche Anleitung. Leider scheint deine Extention mich zu hassen...

Ich habe die Anleitung befolgt. Ohne irgendwelche Anpassungen meinerseits - nur das CSS greift, aber das macht ja technsich nichts kaputt - "Der Prozess ist nicht erlaubt".
Ich habe die Extention deinstalliert, entfernt und wieder aufgespielt. "Der Prozess ist nicht erlaubt".
Ich habe es auf einer anderen lokale Installation ausprobiert. "Der Prozess ist nicht erlaubt"

Ich bin knörig!

Habe nun einmal Screenshots des Pluings gemacht - vielleicht stimmt da ja was nicht. TypoScript habe ich keines bearbeitet. Wie gesagt: installiert und auf einer Seite mit den Angaben eingefügt...

Ich weiß nicht woran es liegen kann... #angry#

Grüße
Nicole

bettercontact.jpg

Nicole87 ·

Dass das Bild hier nicht geht ist doof...

Habe bettercontact gerade nochmal auf einem Server installiert - da wird die Mail auch nicht versandt, aber ich bekomme zumindest die Meldung "Message could not be sent. Please try again." und das Formular wird weiter angezeigt...

Gebe nun hier mal händisch ein, wo im Plugin Angaben sind:

Allgemein
Log aktivieren

Template
Direkt auf das Kontaktformular springen (Anker)
Fehlerhafte Felder hervorheben
Formular leeren wenn erfolgreich versandt

E-Mails
Sende Benachrichtigung an: meineemail@hotmail.com
Absender-E-Mail: Kontaktformular <formular@domain.de>
Administrator E-Mail: admin@domail.com

E-Mails senden an: - definiert durch TypoScript -
Benutze folgende als Absender-Adresse: - definiert durch TypoScript -
Benutze folgende als Antwort-Adresse: - definiert durch TypoScript -
Benutze diesen Zeichensatz für E-Mails: - definiert durch TypoScript -
E-Mails in diesem Format setzen: - definiert durch TypoScript -

Spam
Captcha-Unterstützung aktivieren für: - definiert durch TypoScript -
Eingaben im Fehlerfall anzeigen: - definiert durch TypoScript -
Administrator benachrichtigen über: - definiert durch TypoScript -
Herkunft prüfen
Maximal Anzahl erlaubter Sendungen: 10
Wartezeit wenn maximal Anzahl erreicht wurde: 60

DB

### Demo configuration (see manual for details) ###

# Add current page id as pid of the new dataset
# pid = TEXT
# pid.data = TSFE : id

# Add creation date automatically
# crdate = TEXT
# crdate.data = date : U

# Set default values for some fields
# hidden  = 0
# deleted = 0

# Save submitted name in field "name"
# name = TEXT
# name.data = GPvar : tx_spbettercontact_pi1-9|name

# Include external TypoScript configuration
# <INCLUDE_TYPOSCRIPT: source="FILE:fileadmin/my_setup.txt">

Ich habe wie gesagt keine Angaben im TypoScript gemacht (meines Wissens nach #paralyzed#)

Kann mir noch jemand helfen? :S

Grüße
Nicole

speedprogs ·

Hallo Nicole,

hast du, wie lisardo es vorgeschlagen hat, über das Install Tool versucht eine E-Mail zu verschicken? Den Punkt findest du unter "Basic Configuration" -> "Send test mail". Trage dort deine E-Mail Adresse ein und mach einen Haken bei "Test t3lib_htmlmail". Wenn dort eine negative Rückmeldung erscheint oder du keine E-Mail bekommst, dann stimmt was nicht mit dem Mail-Programm auf deinem Server.

Außerdem musst du sicher stellen, ob du wirklich von der Adresse "formular@domain.de" E-Mails verschicken darfst. Denn nur in den wenigsten Fällen erlauben Administratoren, dass ihr Mail-Programm von Adressen mit komplett anderer Domain ( domain.de ) E-Mails versendet. Falls die Administrator-Adresse zu deinem Server gehört und gültig ist, setze diese mal als Absender-Adresse ein und probiere es erneut.

Beste Grüße
--
Kai

Nicole87 ·

Okay Jungs, ich kann nun ohne Zögern sagen "Ich hasse TYPO3".

Ich kann keine Mails versenden. Liegt wahrscheinlich an der lokalen Installation. Aber dass die Meldung "Dieser Prozess ist nicht erlaubt" kommt, finde ich trotzdem irritierend. *schmoll*

Auf dem einen, halbwegs funktionierenden Server, habe ich es auch nochmal versucht, aber da kam bisher auch keine Mail an - echt mistig!

Ich lege das ganze erstmal auf Eis. Meine Präsentation ist Ende des Monats - ich schau einfach, dass es hübsch aussieht und fülle die Präsentationszeit mit anderen Sachen als dem Versenden des Formulares...
Aber nächsten Monat gehts dann da wieder ran und dann find ich bestimmt noch was, um dumme, nervige Fragen zu stellen! 😉

Bedanke mich erstmal an dieser Stelle für die Hilfen! 😃

Gruß
Nicole

speedprogs ·

Hallo Nicole,

gib doch nicht so schnell auf! Die Meldung, dass der Prozess nicht erlaubt ist, kann nur zwei Ursachen haben:

1. "Herkunft prüfen (HTTP_REFERER)" ist bei dir aktiviert, aber dein Browser sendet keinen Referer.

2. Du hast den Marker für die versteckten Eingabefelder (###HIDDEN###) im HTML-Template für das Formular vergessen oder sie enthalten beim Absenden einen Wert.

Prüfe mal die genannten Punkte, bevor du die ganze Arbeit umsonst gemacht hast. Ich bin sicher du schaffst das noch, außerdem wie sieht es denn aus, wenn du nicht mal etwas präsentieren kannst?

PS: Falls du nicht einmal eine Testmail versenden kannst, solltest du auf deinem Server prüfen, ob du überhaupt einen Mail-Server installiert hast und ggf. einen installieren. Vielleicht kennst du ja jemanden, der dir dabei helfen kann.

Nachtrag:
Mir ist gerade noch etwas eingefallen. Ab Version 2.4.2 (!) des Kontaktformulars hast du die Möglichkeit das Senden von E-Mails ganz abzuschalten. Das ist z.B. dann von Vorteil, wenn du die Anfragen nur in eine Tabelle deiner Datenbank speichern möchtest. Da du das Log aktiviert hast, wirst du im Backend zumindest etwas zeigen können. Deaktivieren kannst du das Senden indem du die Option "E-Mails senden an" auf "Niemanden" stellst. Vielleicht hilft dir das als kleiner "Workaround" für deine Präsentation.

Beste Grüße
--
Kai

Nicole87 ·

Hallo!

Nachdem ich meine Installation erfolgreich zerschossen habe, versuche ich es nun noch einmal...

Das Senden des Formulars geht auch nicht, wenn ich einstelle, dass die Emails an niemanden versandt werden. Ich müsste wohl einen EMailserver auf meiner lokalen Installation einrichten oder? Geht das überhaupt? *keine ahnung davon hat*

Ich habe mein Template für das Formular noch etwas überarbeitet und gemerkt, dass das TypoScript für die TEmplatedatei nicht greift... Hier ist mein Script - weiß einer, warum es nicht greift?

page = PAGE
page{
includeCSS {
file4 = fileadmin/templates/css/bettercontact.css
file4.title = Screen
file4.media = screen, projection
            }
   }

plugin.tx_spbettercontact_pi1 {
      mailto = m_s87@hotmail.com
      mailfrom = yourdomainhere.com <kontakt@yourdomainhere.com>
      mailerror = webmaster@yourdomainhere.com
      webaddress = www.yourdomainhere.com
      signature = Wein für Jedermann 
      templateFile = fileadmin/templates/ext-templates/bettercontact/form.html
      color_positive = #00CC00
      color_negative = #aa0000
      regex_name = /^[a-zäüöÄÜÖa-ýA-Ýß0-9\-\[\]\(\)\s\.]{3,}$/i
      regex_tel = /^[0-9\-\(\)\/\+\s]*$/
      regex_fax = /^[0-9\-\(\)\/\+\s]*$/
      regex_mail = /^[\w-]+(?:\.[\w-]+)*@(?:[\w-]+\.)+[a-zA-Z]{2,7}/
      regex_inquiry = /^[[:print:][:space:]ßäüöÄÜÖa-ýA-Ý\n]{10,}$/
}

plugin.tx_spbettercontact_pi1.database.fieldconf {
  deleted = 0
  hidden  = 0
}
plugin.tx_spbettercontact_pi1 {
      _LOCAL_LANG.de {
            msg_name_problem = Bitte geben Sie einen gültigen Namen ein.
            msg_name_empty = Bitte geben Sie einen Namen ein.
            msg_tel_problem = Bitte geben Sie eine gültige Telefonnummer ein.
            msg_fax_problem = Bitte geben Sie eine gültige Faxnummer ein.
            msg_mail_problem = Bitte geben Sie eine gültige E-Mail Adresse ein.
            msg_mail_empty = Bitte geben Sie eine E-Mail Adresse ein.
            msg_inquiry_problem = Die Nachricht muss mindestens 10 Zeichen enthalten.
            msg_inquiry_empty = Bitte geben Sie eine Nachricht ein.
            msg_sent = Nachricht wurde versandt. Vielen Dank.
            msg_not_sent = Es ist ein Problem mit den Formulareingaben aufgetreten.
            contact = Persönliche Daten des Kontaktes
            title = Anrede
            name = Name:
            tel = Telefonnr.:
            fax = Fax:
            msg = Nachricht
            dear = Guten Tag
            reply_msg1_1 = Sie erhalten diese E-Mail, um ihre Kontaktaufname mit
            reply_msg1_2 = zu bestätigen.
            reply_msg2 = Nach Bearbeitung erhalten sie umgehend eine Antwort auf ihre Anfrage.
            thank = Vielen Dank für ihre Kontaktaufname mit
            refer = Anfrage durch ihr Kontaktformular von
            refer_error1 = Antwort auf die Anfrage von
            refer_error2 = konnte nicht gesendet werden
            submit = Senden
      }
}

Außerdem würde ich die Required-Markierungen von den "*" zu "Pflichtfeld" ändern... Wo kann ich das machen?

Grüße
Nicole

speedprogs ·

Hallo Nicole,

sag mal, wo hast du denn die Konfiguration her? Die ist veraltet und gehört zur Version 1.x meiner Extension, wir sind inzwischen bei Version 2.4.2! Außerdem kannst du eine Stylesheet-Datei direkt im Plugin konfigurieren, wodurch du sie nicht extra mit "page.includeCSS" einbinden musst. Und die Datenbank-Konfiguration brauchst du nicht machen, wenn du die Eingaben nicht auch in die Datenbank speichern willst.

Nachfolgend findest du die gleiche TypoScript-Konfiguration so umgeschrieben, dass sie funktioniert. Es sind alle veralteten und unnötigen Dinge raus geflogen. Bevor du aber das neue TS ausprobierst, kopiere aber bitte erstmal die Dateien "locallang.xml" und "email.html" aus dem Verzeichnis "typo3conf/ext/sp_bettercontact/res/templates/frontend/" in das Verzeichnis "fileadmin/templates/ext-templates/bettercontact/". Anschließend kannst du darin deine Änderungen vornehmen und z.B. neue Label anlegen.

plugin.tx_spbettercontact_pi1 {

  ## Dateien:
  stylesheetFile   = fileadmin/templates/css/bettercontact.css
  formTemplate     = fileadmin/templates/ext-templates/bettercontact/form.html
  emailTemplate    = fileadmin/templates/ext-templates/bettercontact/email.html
  locallangFile    = fileadmin/templates/ext-templates/bettercontact/locallang.xml

  ## E-Mail Adressen:
  emailRecipients  = m_s87 @ hotmail.com
  emailSender      = yourdomainhere.com <kontakt @ yourdomainhere.com>
  emailAdmin       = m_s87 @ hotmail.com
  emailReturnPath  = kontakt @ yourdomainhere.com

  ## Anstelle von "color_positive" und "color_negative":
  infoWrapPositive = <span style="color:#00CC00;">|</span>
  infoWrapNegative = <span style="color:#aa0000;">|</span>

  ## Hier kannst du das Senden von E-Mails deaktivieren:
  #sendTo          = none

}

ACHTUNG:
- Die E-Mail Adressen habe ich wegen dem Spam-Schutz dieses Forums auseinander gezogen.
- Achte darauf, dass die Dateien "email.html" und "locallang.xml" im richtigen Verzeichnis liegen.
- Stelle sicher, dass das Senden von E-Mails über die Adresse "kontakt @ yourdomainhere.com" von deinem Server erlaubt ist, oder setze anstelle dessen eine gültige E-Mail Adresse ein!
- Die die einzelnen Werte der Flexform-Konfiguration (Plugin-Einstellungen im Backend) überschreiben die TypoScript-Konfiguration, prüfe daher, ob du dort irgendwelche Einstellungen gemacht hast!
- Um die Pflichtfeld-Markierung zu ändern sieh mal in der "locallang.xml" unter "required" nach.

Beste Grüße
--
Kai

Nicole87 ·

Halllloooo Kai und all die anderen!

Ich habe meine Präsentation hinter mir und keiner wollte das Formular in Action sehen! 😉

Nun steht allerdings die Live-Schaltung an und da muss das Ding dann doch laufen... (voll doooof!) :S

Das Formular wird auch gesendet und ich passe gerade die E-Mail-Texte meinen Vorstellungen an. Ich denke, es passt soweit auch gut.
Jedoch habe ich in meinem HTML ein Betreff-Feld eingerichtet und würde das gerne im E-Mail-Betreff einrichten...

Außerdem müsste ich noch irgendwie ein zweites HTML-Gerüst mit anderen Eingabefeldern einrichten... Im Moment binde ich nur ein Kontaktformular ein, aber es müssen noch 2 Mitgliedschaftsanträge eingebunden werden und ich weiß gerade nicht, wie ich das bewerkstelligen soll... o.O

Kann mir jemand helfen?

Mit freundlichen Grüßen
Nicole

Edit:

Hm... Also so ganz check ich es anscheinend noch nicht. Wollte nun erstmal ein simples input-Feld einrichten (das Dropdown-Auswahl-Feld kommt später). Habe dazu dies versucht:

fields {
    demo {
        required = 1
        minLength = 3
        maxLength = 70
        default =
        regex =
        disallowed = <>[](){}&;”
        allowed =
        default =
    }
<input type="text" name="###DEMO###" value="###VALUE_DEMO###" class="###ERR_DEMO###" />

Und im Script zum Mail senden:

###VALUE_DEMO###

Das Input-Feld ist da. Leider kommt nichts in der Mail an.. 🙁

Nicole87 ·

Hallo!

Also nun gehts doch - ich hatte vergessen, die Dateien hochzuladen.. #paralyzed#

Allerdings ist mir die Umsetzung mit einem Dropdown noch nicht klar... Hab es nun wie folgt versucht:

<label class="form-label">###LABEL_SUBJECT###</label>
<select name="###SUBJECT###" value="###VALUE_SUBJECT###" class="###ERR_SUBJECT###" size="1">
      <option value="Keinem Thema zugeordnet">bitte w&auml;hlen sie ein Thema</option>
      <option value="Allgemeine Frage">Allgemeine Frage</option>
      <option value="Tiervermittlung">Tiervermittlung</option>
      <option value="Mitgliedschaft / Patenschaft">Mitgliedschaft / Patenschaft</option>
      <option value="Spenden">Spenden</option>
      <option value="Tierheimshop">Shop</option>
      <option value="Pension">Pension</option>
</select>

Mit der bekannten Ausgabe in der E-Mailvorlage klappt es leider nicht:
###LABEL_SUBJECT### ###VALUE_SUBJECT###

Nichteinmal die Label-Ausgabe funktioniert im email.html....

Kann mir jemand weiterhelfen, wie ich damit umgehen soll?

Grüße
Nicole

EDIT:

Okay, hab in form.html nun das gefunden:

    // Set state of a checkbox
    ###CHECKED_<FIELDNAME>###


    // Set state of a radio button
    ###CHECKED_<FIELDNAME>_[###<SAME_AS_VALUE>###]###


    // Set state of a select option
    ###SELECTED_<FIELDNAME>_[###<SAME_AS_VALUE>###]###

Allerdings verstehe ich es nicht ganz. Wenn ich z.B. das Feld "Anrede" habe, was ich mit Radiobuttons umsetzen möchte, wo kommt dann das "###CHECKED_<FIELDNAME>_[###<SAME_AS_VALUE>###]###" hin? Unter "value"? Unter "name"? Und das angehakte bekommt im Marker das "CHECKED", der andere Button nicht. Allerdings kann ich doch nicht das VALUE als Marker anlegen... oO"
Ich bin gerade sehr verwirrt.....

grst01 ·

Hallo und vielen Dank für diese wunderbare Extension!

Funzt alle wunderbar - bis auf eine Kleinigkeit.

Habe ein Selectfield in einer eigenen form_example1.html nach bekannten Muster erstellt:

<label for="###REASON###" class="tx_spbettercontact_label">###LLL:reason### ###REQUIRED_REASON###</label>
                <select name="###REASON###">
                  <option ###SELECTED_REASON_[###LLL:reason1###]###>###LLL:reason1###</option>
                  <option ###SELECTED_REASON_[###LLL:reason2###]###>###LLL:reason2###</option>
                  <option ###SELECTED_REASON_[###LLL:reason3###]###>###LLL:reason3###</option>
                  <option ###SELECTED_REASON_[###LLL:reason4###]###>###LLL:reason4###</option>
                  <option ###SELECTED_REASON_[###LLL:reason5###]###>###LLL:reason5###</option>
                  <option ###SELECTED_REASON_[###LLL:reason6###]###>###LLL:reason6###</option>
                  <option ###SELECTED_REASON_[###LLL:reason7###]###>###LLL:reason7###</option>
                  <option ###SELECTED_REASON_[###LLL:reason8###]###>###LLL:reason8###</option>
                </select>
                <br /><br />

In meiner zusätzlichen locallang.xml habe ich diese 8 Optionen benannt...

Passt auch alles

<label index="reason1"></label>
                        <label index="reason2">Mitgliedschaft 1</label>
                        <label index="reason3">Mitgliedschaft 2</label>
                        <label index="reason4">Mitgliedschaft 3</label>
                        <label index="reason5">Mitgliedschaft 4</label>
                        <label index="reason6">Mitgliedschaft 5</label>
                        <label index="reason7">Allg. Anfrage</label>
                        <label index="reason8">Support</label>

Leider bekomme ich das im Formular ausgewählte Feld nicht in meine Adminmail rein...

Habe es in meiner eigenen email.html mit folgenden versucht :

<!-- ###MAIL_MESSAGE_ADMIN_HTML### begin -->
<p>###LLL:email_admin_dear###<br />
<br />
###LLL:email_admin_body1###</p>
<table>
    <tr>
        <td width="80"><strong>###LABEL_REASON###</strong></td>
        <td>###SELECTED_REASON###</td>
    </tr>
    <tr>
        <td width="80"><strong>###LABEL_NAME###</strong></td>
        <td>###VALUE_NAME###</td>
    </tr>
...

Ich benutze ausschließlich die HTML-EMail...

Mir wird nur der Marker ###LABEL_REASON### gefüllt, leider nicht der Marker für den ausgewählten Betreff...

Kann mir hier bitte jemand auf die Sprünge helfen?

grst01 ·

Okay, habe mir selber die Lösung "erarbeitet" :-)

In der Datei email.html musste ich ###VALUE_REASON### eingeben und nicht nur ###REASON###

So klappt es auch mit dem Nachbarn :-)