API16:JFormRuleUsername/test
From Joomla! Documentation
This Namespace has been archived - Please Do Not Edit or Create Pages in this namespace. Pages contain information for a Joomla! version which is no longer supported. It exists only as a historical reference, will not be improved and its content may be incomplete.
Contents |
Description
Method to test if a username is unique.
Description:JFormRuleUsername/test
Syntax
test(&$field, &$values)
| Parameter Name | Default Value | Description |
|---|---|---|
| &$field | $field A reference to the form field. | |
| &$values | $values The values to test for validiaty. |
Returns
mixed on invalid rule, true if the value is valid, false otherwise.
Defined in
libraries/joomla/form/rules/username.php
Importing
jimport( 'joomla.form.rules.username' );
Source Body
public function test(&$field, &$values) { $return = false; $name = (string)$field->attributes()->name; $key = (string)$field->attributes()->field; $value = isset($values[$key]) ? $values[$key] : 0; // Check the rule. if (!$key) { return new JException('Invalid Form Rule :: '.get_class($this)); } // Check if the username is unique. $db = &JFactory::getDbo(); $db->setQuery( 'SELECT count(*) FROM `#__users`' . ' WHERE `username` = '.$db->Quote($values[$name]) . ' AND '.$db->nameQuote($key).' != '.$db->Quote($value) ); $duplicate = (bool)$db->loadResult(); // Check for a database error. if ($db->getErrorNum()) { return new JException('Database Error :: '.$db->getErrorMsg()); } if (!$duplicate) { $return = true; } return $return; }
[Edit See Also] SeeAlso:JFormRuleUsername/test
Examples
<CodeExamplesForm />
