diff options
author | Andrey Andreev <narf@bofh.bg> | 2012-06-15 11:57:58 +0200 |
---|---|---|
committer | Andrey Andreev <narf@bofh.bg> | 2012-06-15 11:57:58 +0200 |
commit | 26315d1621bbf91ec27503378a2b8a1597ff27b4 (patch) | |
tree | 9d94e5fcf590776489cbf5f33e33348b2f79a3b9 | |
parent | 974c75bc030b4eb0521b66bf85e81a5ab61d14a6 (diff) | |
parent | ceaf887a7a849eab95b1bed1a837e2e3a1720c99 (diff) |
Merge pull request #1480 from IT-Can/fix-validation-exactlength
Validation exact_length not working
-rw-r--r-- | system/libraries/Form_validation.php | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/system/libraries/Form_validation.php b/system/libraries/Form_validation.php index 6cbe032c7..6d4446d0c 100644 --- a/system/libraries/Form_validation.php +++ b/system/libraries/Form_validation.php @@ -993,15 +993,19 @@ class CI_Form_validation { * Minimum Length * * @param string - * @param int + * @param string * @return bool */ public function min_length($str, $val) { - if (preg_match('/[^0-9]/', $val)) + if ( ! is_numeric($val)) { return FALSE; } + else + { + $val = (int) $val; + } return (MB_ENABLED === TRUE) ? ($val <= mb_strlen($str)) @@ -1014,15 +1018,19 @@ class CI_Form_validation { * Max Length * * @param string - * @param int + * @param string * @return bool */ public function max_length($str, $val) { - if (preg_match('/[^0-9]/', $val)) + if ( ! is_numeric($val)) { return FALSE; } + else + { + $val = (int) $val; + } return (MB_ENABLED === TRUE) ? ($val >= mb_strlen($str)) @@ -1035,15 +1043,19 @@ class CI_Form_validation { * Exact Length * * @param string - * @param int + * @param string * @return bool */ public function exact_length($str, $val) { - if (preg_match('/[^0-9]/', $val)) + if ( ! is_numeric($val)) { return FALSE; } + else + { + $val = (int) $val; + } return (MB_ENABLED === TRUE) ? (mb_strlen($str) === $val) |