summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDerek Allard <derek.allard@ellislab.com>2008-04-29 01:18:00 +0200
committerDerek Allard <derek.allard@ellislab.com>2008-04-29 01:18:00 +0200
commitb94b89c69195a0708add8dedb1721f12bcafbf8c (patch)
treebb431084a58830ffcc8dd6216bea8eb2c8372e13
parent05f830c7105ef3cd4a8388bffe7cf73c35236105 (diff)
Added a valid_emails rule to the Validation class.
-rw-r--r--system/database/drivers/mysql/mysql_driver.php5
-rw-r--r--system/libraries/Validation.php27
-rw-r--r--user_guide/changelog.html1
-rw-r--r--user_guide/libraries/validation.html7
4 files changed, 35 insertions, 5 deletions
diff --git a/system/database/drivers/mysql/mysql_driver.php b/system/database/drivers/mysql/mysql_driver.php
index 2bc66ecf2..f435c0bc4 100644
--- a/system/database/drivers/mysql/mysql_driver.php
+++ b/system/database/drivers/mysql/mysql_driver.php
@@ -314,11 +314,8 @@ class CI_DB_mysql_driver extends CI_DB {
$query = $this->query($this->_count_string . $this->_protect_identifiers('numrows'). " FROM " . $this->_protect_identifiers($this->dbprefix.$table));
- if ($query->num_rows() == 0)
- return '0';
-
$row = $query->row();
- return $row->numrows;
+ return (int)$row->numrows;
}
// --------------------------------------------------------------------
diff --git a/system/libraries/Validation.php b/system/libraries/Validation.php
index d0714d040..18fdba2d3 100644
--- a/system/libraries/Validation.php
+++ b/system/libraries/Validation.php
@@ -488,6 +488,33 @@ class CI_Validation {
// --------------------------------------------------------------------
/**
+ * Valid Emails
+ *
+ * @access public
+ * @param string
+ * @return bool
+ */
+ function valid_emails($str)
+ {
+ if (strpos($str, ',') === FALSE)
+ {
+ return $this->valid_email(trim($str));
+ }
+
+ foreach(explode(',', $str) as $email)
+ {
+ if (trim($email) != '' && $this->valid_email(trim($email)) === FALSE)
+ {
+ return FALSE;
+ }
+ }
+
+ return TRUE;
+ }
+
+ // --------------------------------------------------------------------
+
+ /**
* Validate IP Address
*
* @access public
diff --git a/user_guide/changelog.html b/user_guide/changelog.html
index 767dd2a48..ef1b7ace7 100644
--- a/user_guide/changelog.html
+++ b/user_guide/changelog.html
@@ -83,6 +83,7 @@ SVN Commit: not currently released</p>
<li>The MySQLi forge class is now in sync with MySQL forge. </li>
<li>Added the ability to set CRLF settings via config in the <a href="libraries/email.html">Email</a> class.</li>
<li><a href="libraries/unit_testing.html">Unit Testing</a> results are now colour coded, and a change was made to the default template of results.</li>
+ <li>Added a valid_emails rule to the <a href="libraries/validation.html">Validation</a> class.</li>
</ul>
</li>
<li>Helpers
diff --git a/user_guide/libraries/validation.html b/user_guide/libraries/validation.html
index 815b542be..e539fbfa8 100644
--- a/user_guide/libraries/validation.html
+++ b/user_guide/libraries/validation.html
@@ -18,7 +18,6 @@
<meta name='robots' content='all' />
<meta name='author' content='ExpressionEngine Dev Team' />
<meta name='description' content='CodeIgniter User Guide' />
-
</head>
<body>
@@ -597,6 +596,12 @@ For example, your "username" error will be available at:<br /><dfn>$this->valida
<td class="td">&nbsp;</td>
</tr>
<tr>
+ <td class="td"><strong>valid_emails</strong></td>
+ <td class="td">No</td>
+ <td class="td">Returns FALSE if any value provided in a comma separated list is not a valid email.</td>
+ <td class="td">&nbsp;</td>
+</tr>
+<tr>
<td class="td"><strong>valid_ip</strong></td>
<td class="td">No</td>
<td class="td">Returns FALSE if the supplied IP is not valid.</td>