2016-06-01 35 views
0

私は電子メールIDしか持っていません。ユーザーが既にサイトに登録しているかどうか確認したいと思います。 私はそれを確認することができますmysqlクエリで知っている。私は可能な場合は、特定のjoomlaの機能でそれをチェックしたいですか?joomlaに既に存在するユーザーを確認してください

$mail_d = [email protected] 
    $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が組み込みの関数を提供してくれたら助けてください。

答えて

0

あなたはユーザーIDとユーザー名、電子メールを通じて

// IDを介してデータを取得し

$userId = JFactory::getUser($id); 

//ユーザ名を介してデータを取得し

jimport('joomla.user.helper'); 
userId = JUserHelper::getUserId($username); 

ではなくて、ユーザーの詳細を取得することができますJoomla APIを使用して

userId = JFactory::getUser($email); // Will not work 

OR

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"; 
} 
かかわらず、より良い方法でコード化することができます
関連する問題