font-weight: normal;\r
text-decoration: none;\r
color: #0000FF;\r
- cursor: hand;\r
}\r
a:link:hover, a:visited:hover, a:active:hover, a:focus:hover\r
{\r
font-weight: normal;\r
text-decoration: underline;\r
color: #0000FF;\r
- cursor: hand;\r
}\r
body\r
{\r
}\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
</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
\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>Das Formularfeld ist ein Pflichtfeld (<code>required</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
+<li>In den Templates wird die Variable <code>{BERUF}</code> durch den Inhalt des Formularfeldes ersetzt (<code>tpl_var</code>)</li>\r
+<li>Die Fehlermeldungen sollten selbsterklärend sein</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