]> git.p6c8.net - form-email.git/commitdiff
Regex und Check-Funktion fuer indiv. Formularfelder
authorPatrick Canterino <patrick@patshaping.de>
Sat, 3 Dec 2011 12:37:36 +0000 (12:37 +0000)
committerPatrick Canterino <patrick@patshaping.de>
Sat, 3 Dec 2011 12:37:36 +0000 (12:37 +0000)
funktionieren jetzt richtig

form-email/config.php
form-email/mailer.php

index 13e68b8ba5441d2dfa6c0d33d7d2aedbeb3ff14a..7818660509cf1e247aa5089e8cbc389891ef706a 100644 (file)
@@ -50,13 +50,24 @@ $user_fields['beruf']['min'] = 5;
 $user_fields['beruf']['max'] = 50;\r
 $user_fields['beruf']['optional'] = 0;\r
 $user_fields['beruf']['regex'] = '/^[A-Za-z]$/';\r
 $user_fields['beruf']['max'] = 50;\r
 $user_fields['beruf']['optional'] = 0;\r
 $user_fields['beruf']['regex'] = '/^[A-Za-z]$/';\r
-$user_fields['beruf']['check'] = '';\r
+$user_fields['beruf']['check'] = 'check_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 50 Zeichen lang sein!';\r
 $user_fields['beruf']['errors']['not_set'] = 'Sie haben keinen Beruf eingegeben!';\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 50 Zeichen lang sein!';\r
 $user_fields['beruf']['errors']['not_set'] = 'Sie haben keinen Beruf eingegeben!';\r
-$user_fields['beruf']['errors']['no_match'] = 'Der Beruf darf nur aus Buchstaben bestehen!';\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
 # Sicherheit\r
 \r
 \r
 # Sicherheit\r
 \r
index c85d2062320e185696910c546e45936604d9a675..b32f095ca6efd6f911c8ab76183e19ee2e751ff7 100644 (file)
@@ -98,13 +98,13 @@ while(list($user_field,$user_field_data) = each($user_fields)) {
     $user_field_content = formdata($user_field);\r
 \r
     if(isset($user_field_data['check']) && $user_field_data['check'] != '') {\r
     $user_field_content = formdata($user_field);\r
 \r
     if(isset($user_field_data['check']) && $user_field_data['check'] != '') {\r
-        if(function_exists($user_field_data['check']) && call_user_func($user_field_data['check'],$user_field_content)) {\r
+        if(function_exists($user_field_data['check']) && call_user_func($user_field_data['check'],$user_field_content) === false) {\r
             show_user_error($user_field_data['errors']['check_fail']);\r
         }\r
     }\r
 \r
     if(isset($user_field_data['regex']) && $user_field_data['regex'] != '') {\r
             show_user_error($user_field_data['errors']['check_fail']);\r
         }\r
     }\r
 \r
     if(isset($user_field_data['regex']) && $user_field_data['regex'] != '') {\r
-        if(preg_match($user_field_data['regex'],$user_field_content)) {\r
+        if(!preg_match($user_field_data['regex'],$user_field_content)) {\r
             show_user_error($user_field_data['errors']['match_fail']);\r
         }\r
     }\r
             show_user_error($user_field_data['errors']['match_fail']);\r
         }\r
     }\r

patrick-canterino.de