检查用户是否已存在于 joomla 中
Check user if already exist in joomla
我只有电子邮件 ID,我想检查用户是否已经在网站上注册。
我知道通过 mysql 查询我可以检查它。但如果可能的话,我想用特定的 joomla 功能检查它?
$mail_d = abc@gmail.com
$db = JFactory::getDBO() ;
$db->getQuery( true ) ;
$query = "SELECT id FROM #__users WHERE email = '".$mail_d."' " ;
$db->setQuery($query) ;
$check = $db->loadResult() ;
if($check)
{
echo "User Exist";
}
我已经用上面的代码检查过了。但是,如果 joomla 提供任何内置功能,请帮助。
您可以通过用户id和用户名获取用户的详细信息
//通过ID取数据
$userId = JFactory::getUser($id);
//通过用户名取数据
jimport('joomla.user.helper');
userId = JUserHelper::getUserId($username);
但不是通过电子邮件使用 Joomla API
userId = JFactory::getUser($email); // Will not work
或
jimport('joomla.user.helper');
userId = JUserHelper::getUserId($email); // Will not work
所以你正在做的是唯一的方法,但可以用更好的方式编码
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query = 'SELECT id FROM #__users WHERE email = ' . $db->Quote($email);
$db->setQuery($query, 0, 1);
$check = $db->loadResult();
if($check){
echo "user exists";
}
我只有电子邮件 ID,我想检查用户是否已经在网站上注册。 我知道通过 mysql 查询我可以检查它。但如果可能的话,我想用特定的 joomla 功能检查它?
$mail_d = abc@gmail.com
$db = JFactory::getDBO() ;
$db->getQuery( true ) ;
$query = "SELECT id FROM #__users WHERE email = '".$mail_d."' " ;
$db->setQuery($query) ;
$check = $db->loadResult() ;
if($check)
{
echo "User Exist";
}
我已经用上面的代码检查过了。但是,如果 joomla 提供任何内置功能,请帮助。
您可以通过用户id和用户名获取用户的详细信息
//通过ID取数据
$userId = JFactory::getUser($id);
//通过用户名取数据
jimport('joomla.user.helper');
userId = JUserHelper::getUserId($username);
但不是通过电子邮件使用 Joomla API
userId = JFactory::getUser($email); // Will not work
或
jimport('joomla.user.helper');
userId = JUserHelper::getUserId($email); // Will not work
所以你正在做的是唯一的方法,但可以用更好的方式编码
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query = 'SELECT id FROM #__users WHERE email = ' . $db->Quote($email);
$db->setQuery($query, 0, 1);
$check = $db->loadResult();
if($check){
echo "user exists";
}