}\r
pre\r
{\r
- padding-left: 0.5cm;\r
- padding-right: 0.5cm;\r
+ padding-left: 0.7cm;\r
+ padding-right: 0.7cm;\r
font-family: 'Courier New', Courier, monospace;\r
font-size: 10pt;\r
color: #0000B0;\r
<p>Sie können außerdem noch ein Feld namens <i>subject</i> anlegen. Hier kann ein Betreff für die Mail eingegeben werden. Wenn Sie auf dieses Feld verzichten, erhalten die E-Mails automatisch den in <code>$default_subject</code> definierten Betreff (s.u.).<br />\r
Weiterhin ist noch ein Feld namens <i>recipient</i> möglich. Dieses Feld enthält einen Alias-Empfänger. Wie das funktioniert, können Sie bei der Beschreibung der Einstellung <code>$aliases</code> lesen.</p>\r
\r
+<p>Zusätzlich können Sie die vorgegebenen Formularfelder mit <a href="#individuell">individuellen</a> ergänzen.</p>\r
+\r
<p>Wenn Sie Captchas (zufällige Zeichenfolgen, die der Benutzer vor dem Absenden des Formulars eingeben muss, um Spambots auszuschließen) benutzen wollen (siehe unten), müssen Sie im Formular die Datei <i>captcha.php</i> als Bild einbinden (<code><img></code>-Tag). Bedenken Sie, dass Sie diese Datei auch in den <a href="#templates">Templates</a> einbinden müssen!</p>\r
\r
<p>Das Formular muss dann noch mit <tt>POST</tt> die Daten an die Datei <i>mailer.php</i> (oder wie Sie die Datei genannt haben) senden.</p>\r
\r
<p>Geben Sie zwischen den einfachen Anführungszeichen die Adresse an, an die die Mail gehen soll. Wenn die Mail an mehrere Empfänger gehen soll, so trennen Sie die einzelnen E-Mail-Adressen ganz einfach durch Semikolons.</p>\r
\r
-<p>Das war es im Grunde genommen. Aber <i>Form E-Mail</i> lässt sich noch weiter konfigurieren. Mehr dazu finden Sie in den nächsten beiden Abschnitten.</p>\r
+<p>Sie haben nun <i>Form E-Mail</i> für die Standard-Nutzung konfiguriert. <i>Form E-Mail</i> lässt sich jedoch noch feiner konfigurieren. Mehr dazu finden Sie in den nächsten Abschnitten.</p>\r
\r
<p class="upanddown"><a href="#top">Nach oben</a></p>\r
\r
<td><code>$aliases</code></td>\r
<td>Hier können Sie eine Alias-Namen für Empfänger angeben. Soll einem Alias mehrere Empfänger zugeordnet werden, gilt dasselbe wie für <code>$mailto</code>.<br />\r
Die Aliase werden mit Hilfe eines assoziativen PHP-Arrays definiert. Da es wohl einige gibt, die von so etwas keine Ahnung haben und ich es nicht gut erklären kann, hier ein Beispiel:<br /><br />\r
-<code>array('info' => 'info@IhreDomain.xyz', 'support' => 'support@IhreDomain.xyz',<br />\r
- 'alle' => 'info@IhreDomain.xyz; support@IhreDomain.xyz')</code></td>\r
+<code>array('info' => 'info@example.com', 'support' => 'support@example.com',<br />\r
+ 'alle' => 'info@example.com; support@example.com')</code></td>\r
</tr>\r
</table>\r
\r
</tr>\r
<tr>\r
<td><code>$referer_ok</code></td>\r
-<td>Geben Sie hier die Hosts an, von denen <i>Form E-Mail</i> aus aufgerufen werden darf (zum Beispiel <i>www.IhreDomain.xyz</i>). Trennen Sie mehrere Hosts durch Semikolons.<br />\r
+<td>Geben Sie hier die Hosts an, von denen <i>Form E-Mail</i> aus aufgerufen werden darf (zum Beispiel <i>www.example.com</i>). Trennen Sie mehrere Hosts durch Semikolons.<br />\r
<b style="color:#FF0000">Achtung:</b> Mit einer Referer-Prüfung kann man zwar unbedarfte Anwender abschrecken, aber wirklich zuverlässig ist diese Methode nicht, da sich der Referer fälschen lässt oder auch komplett fehlen kann.</td>\r
</tr>\r
</table>\r
<td>Die Mail konnte nicht versendet werden</td>\r
</tr>\r
<tr>\r
+<td><code>$err_store_error</code></td>\r
+<td>Die Mail konnte nicht gespeichert werden</td>\r
+</tr>\r
+<tr>\r
<td><code>$err_only_post</code></td>\r
<td><i>Form E-Mail</i> darf nur mit <tt>POST</tt> aufgerufen werden</td>\r
</tr>\r
</tr>\r
<tr>\r
<td><code>$user_fields['beruf']['check']</code></td>\r
-<td>Geben Sie hier eine selbst definierte PHP-Funktion (als Zeichenkette) an, durch die der Wert geprüft werden soll.</td>\r
+<td>Geben Sie hier eine selbst definierte PHP-Funktion (als Zeichenkette) an, durch die der Wert geprüft werden soll. Das erste und einzige Argument der Funktion ist der Inhalt des Formularfeldes. Die Funktion muss <code>true</code> zurückgeben, wenn der Wert in Ordnung ist, ansonsten <code>false</code>.</td>\r
</tr>\r
</table>\r
\r
</tr>\r
<tr>\r
<td><code>$user_fields['beruf']['prepare']</code></td>\r
-<td>Geben Sie hier eine selbst definierte PHP-Funktion (als Zeichenkette) an, die den Wert des Formularfeldes nach den Prüfungen noch verändern (bspw. kann man hier Funktionen angeben, die alle Buchstaben in Großbuchstaben umwandelt).</td>\r
+<td>Geben Sie hier eine selbst definierte PHP-Funktion (als Zeichenkette) an, die den Wert des Formularfeldes nach den Prüfungen noch verändern (bspw. kann man hier Funktionen angeben, die alle Buchstaben in Großbuchstaben umwandelt). Das erste und einzige Argument der Funktion ist der Inhalt des Formularfeldes. Die Funktion muss den bearbeiteten Wert zurückgeben.</td>\r
</tr>\r
<tr>\r
<td><code>$user_fields['beruf']['tpl_var']</code></td>\r
-<td>Geben Sie hier die Template-Variable an, die in den Templates durch den Wert des Formularfeldes ersetzt werden soll. Wenn Sie hier nichts angeben, wird ein Standardwert verwendet (im Fall des Formularfeldes <b>beruf</b> wäre das dann <code>USER_beruf</code>).</td>\r
+<td>Geben Sie hier die <a href="#templates">Template-Variable</a> an, die in den Templates durch den Wert des Formularfeldes ersetzt werden soll. Wenn Sie hier nichts angeben, wird ein Standardwert verwendet (im Fall des Formularfeldes <b>beruf</b> wäre das dann <code>USER_beruf</code>).</td>\r
</tr>\r
</table>\r
\r
+<p>Sie müssen die individuellen Formularfelder nun noch in Ihrem Mail-Formular und in den <a href="#templates">Templates</a> ergänzen.</p>\r
+\r
+<p>Es folgt Beispiel-Konfiguration für ein Formularfeld namens <i>beruf</i>:</p>\r
+\r
+<pre>\r
+$user_fields['beruf']['min'] = 5;\r
+$user_fields['beruf']['max'] = 10;\r
+$user_fields['beruf']['required'] = 1;\r
+$user_fields['beruf']['regex'] = '/^[A-Za-z]+$/';\r
+$user_fields['beruf']['check'] = 'check_beruf';\r
+$user_fields['beruf']['prepare'] = 'prepare_beruf';\r
+$user_fields['beruf']['tpl_var'] = 'BERUF';\r
+\r
+$user_fields['beruf']['errors']['too_short'] = 'Der Beruf muss mind. 5 Zeichen lang sein!';\r
+$user_fields['beruf']['errors']['too_long'] = 'Der Beruf darf höchstens 10 Zeichen lang sein!';\r
+$user_fields['beruf']['errors']['not_set'] = 'Sie haben keinen Beruf eingegeben!';\r
+$user_fields['beruf']['errors']['match_fail'] = 'Der Beruf darf nur aus Buchstaben bestehen!';\r
+$user_fields['beruf']['errors']['check_fail'] = 'Der Beruf sollte keine äöü haben!';\r
+\r
+# Beispiel-Check-Funktion\r
+\r
+function check_beruf($content) {\r
+ if(strpos($content,'ä') !== false) return false;\r
+ if(strpos($content,'ö') !== false) return false;\r
+ if(strpos($content,'ü') !== false) return false;\r
+ \r
+ return true;\r
+}\r
+\r
+# Beispiel-Vorbereitungs-Funktion\r
+\r
+function prepare_beruf($content) {\r
+ return strtolower($content);\r
+}\r
+</pre>\r
+\r
+<p>Das Formularfeld hat die folgenden Eigenschaften:</p>\r
+\r
+<ul>\r
+<li>Der Beruf muss aus mind. 5 Zeichen und max. 10 Zeichen bestehen (<code>min</code> und <code>max</code>)</li>\r
+<li>Es sind nur die Buchstaben A-Z (groß und klein) erlaubt (<code>regex</code>)</li>\r
+<li>Über die Prüffunktion <code>check_beruf()</code> wird verhindert, dass ä, ö und ü angegeben werden (das wird natürlich auch durch den regulären Ausdruck ausgeschlossen, es soll lediglich zur Verdeutlichung dienen)</li>\r
+<li>Durch die Vorbereitungsfunktion <code>prepare_beruf()</code> werden alle Großbuchstaben in Kleinbuchstaben umgewandelt</li>\r
+</ul>\r
+\r
<p class="upanddown"><a href="#top">Nach oben</a></p>\r
\r
<h2><a name="templates" id="templates">Templates anpassen</a></h2>\r
<td><i>mail.txt</i></td>\r
<td>Legt das Aussehen der Mail fest</td>\r
<td>\r
-<!-- !!!UNVOLLSTAENDIG!!! -->\r
<ul>\r
<li><b>EMAIL</b><br />\r
Die eingegebene E-Mail-Adresse</li>\r
Die formatierte Zeitangabe</li>\r
</ul>\r
\r
-Zusätzlich können Sie hier durch Variablen, die mit <b>ENV_</b> beginnen, Server-Umgebungsvariablen im Text einfügen (siehe auch Konfigurationsvariable <code>$allowed_envs</code>.<br />\r
+Weiterhin können Sie hier die definierten Variablen der <a href="#individuell">individuellen Formularfelder</a> (das, was Sie in <code>tpl_var</code> angegeben haben) verwenden.<br />\r
<br />\r
-<b>!!!TODO: Individuelle Formularfelder!!!</b>\r
+Zusätzlich können Sie hier durch Variablen, die mit <b>ENV_</b> beginnen, Server-Umgebungsvariablen im Text einfügen (siehe auch Konfigurationsvariable <code>$allowed_envs</code>.\r
</td>\r
</tr>\r
<tr>\r
<td><i>sent.htm</i></td>\r
<td>Wird angezeigt, wenn die Mail erfolgreich versendet wurde</td>\r
<td>\r
-<!-- !!!UNVOLLSTAENDIG!!! -->\r
<ul>\r
<li><b>EMAIL</b><br />\r
Die eingegebene E-Mail-Adresse</li>\r
<li><b>TIME</b><br />\r
Die formatierte Zeitangabe</li>\r
</ul>\r
-<b>!!!TODO: Individuelle Formularfelder!!!</b>\r
+\r
+Weiterhin können Sie hier die definierten Variablen der <a href="#individuell">individuellen Formularfelder</a> (das, was Sie in <code>tpl_var</code> angegeben haben) verwenden.\r
</td>\r
</tr>\r
<tr>\r
<td><i>user_error.htm</i></td>\r
<td>Wird angezeigt, wenn der Benutzer einen Fehler gemacht hat, der sich aber noch beheben lässt (zum Beispiel wenn ein Formularfeld nicht ausgefüllt wurde)</td>\r
<td>\r
-<!-- !!!UNVOLLSTAENDIG!!! -->\r
<ul>\r
<li><b>EMAIL</b><br />\r
Die eingegebene E-Mail-Adresse</li>\r
Der eingegebene Mail-Text</li>\r
</ul>\r
\r
-Zusätzlich ist es möglich, einen Bereich, der nur angezeigt werden soll, wenn Captchas aktiviert sind, anzuzeigen, indem Sie diesen in folgenden Block einschließen (der <code>{ELSE}</code>-Teil ist optional):<br />\r
+Weiterhin können Sie hier die definierten Variablen der <a href="#individuell">individuellen Formularfelder</a> (das, was Sie in <code>tpl_var</code> angegeben haben) verwenden.<br />\r
<br />\r
-<code>{IF CAPTCHA}Captchas sind aktiviert{ELSE}Captchas sind nicht aktiviert{ENDIF}</code><br />\r
+Zusätzlich ist es möglich, einen Bereich, der nur angezeigt werden soll, wenn Captchas aktiviert sind, anzuzeigen, indem Sie diesen in folgenden Block einschließen (der <code>{ELSE}</code>-Teil ist optional):<br />\r
<br />\r
-<b>!!!TODO: Individuelle Formularfelder!!!</b>\r
+<code>{IF CAPTCHA}Captchas sind aktiviert{ELSE}Captchas sind nicht aktiviert{ENDIF}</code>\r
</td>\r
</tr>\r
</table>\r