Я разрабатываю компонент для Joomla.Он имеет интеграцию с популярными социальными сайтами.Я получаю информацию о пользователе из базы данных через данный социальный профиль.Затем я пытаюсь заставить этого пользователя войти в систему с помощью следующего кода:
$fbuser = $facebook->api(
'/me',
'GET',
array(
'access_token' => $_SESSION['active']['access_token']
)
);
// Get a database object
$db =& JFactory::getDBO();
$query = "SELECT * FROM #__users WHERE email = '".$fbuser['email']."';";
$db->setQuery($query);
$row = $db->loadRow();
if(isset($row))
{
$app = JFactory::getApplication();
$user =& JUser::getInstance($row[0]);
$credentials = array();
$credentials['username'] = $user->get('username');
$credentials['password'] = $user->get('password'); // When I change this to related users plain password then it works
$options = array();
$options['remember'] = true;
$options['silent'] = true;
$app->login($credentials, $options);
}
else
{
return 'There is no account associated with facebook';
}
Проблема в том, что пароль базы данных возвращает кодированный пароль, и это не работает.Когда я даю расшифрованный пароль для $ credentials, он работает.В чем может быть проблема?