JTableUser/check
From Joomla! Documentation
< API16:JTableUserRevision as of 17:43, 22 March 2010 by Doxiki (talk | contribs) (New page: ===Description===
Validation and filtering
<span class="editsection" style="font-size:76%;">
<nowiki>[</nowiki>Edit Descripton<nowiki>]</nowiki>
</sp...)
Revision as of 17:43, 22 March 2010 by Doxiki (talk | contribs) (New page: ===Description===
Validation and filtering
<span class="editsection" style="font-size:76%;">
<nowiki>[</nowiki>Edit Descripton<nowiki>]</nowiki>
</sp...)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
The "API16" namespace is an archived namespace. This page contains information for a Joomla! version which is no longer supported. It exists only as a historical reference, it will not be improved and its content may be incomplete and/or contain broken links.
Description[edit]
Validation and filtering
Template:Description:JTableUser/check
Syntax[edit]
check()
Returns[edit]
boolean True is satisfactory
Defined in[edit]
libraries/joomla/database/table/user.php
Importing[edit]
jimport( 'joomla.database.table.user' );
Source Body[edit]
function check()
{
jimport('joomla.mail.helper');
// Validate user information
if (trim($this->name) == '') {
$this->setError(JText::_('PLEASE_ENTER_YOUR_NAME'));
return false;
}
if (trim($this->username) == '') {
$this->setError(JText::_('PLEASE_ENTER_A_USER_NAME'));
return false;
}
if (preg_match( "#[<>\"'%;()&]#i", $this->username) || strlen(utf8_decode($this->username )) < 2) {
$this->setError( JText::sprintf( 'VALID_AZ09', JText::_( 'Username' ), 2 ) );
return false;
}
if ((trim($this->email) == "") || ! JMailHelper::isEmailAddress($this->email)) {
$this->setError(JText::_('WARNREG_MAIL'));
return false;
}
// Set the registration timestamp
if ($this->registerDate == null) {
$this->registerDate = JFactory::getDate()->toMySQL();
}
// check for existing username
$query = 'SELECT id'
. ' FROM #__users '
. ' WHERE username = ' . $this->_db->Quote($this->username)
. ' AND id != '. (int) $this->id;
;
$this->_db->setQuery($query);
$xid = intval($this->_db->loadResult());
if ($xid && $xid != intval($this->id)) {
$this->setError( JText::_('WARNREG_INUSE'));
return false;
}
// check for existing email
$query = 'SELECT id'
. ' FROM #__users '
. ' WHERE email = '. $this->_db->Quote($this->email)
. ' AND id != '. (int) $this->id
;
$this->_db->setQuery($query);
$xid = intval($this->_db->loadResult());
if ($xid && $xid != intval($this->id)) {
$this->setError(JText::_('WARNREG_EMAIL_INUSE'));
return false;
}
return true;
}
[Edit See Also] Template:SeeAlso:JTableUser/check
Examples[edit]
<CodeExamplesForm />