Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drupal 7 Facebook以drupal用户身份登录_Drupal 7_Drupal Modules_Facebook Login - Fatal编程技术网

Drupal 7 Facebook以drupal用户身份登录

Drupal 7 Facebook以drupal用户身份登录,drupal-7,drupal-modules,facebook-login,Drupal 7,Drupal Modules,Facebook Login,我写了一个facebook登录模块,我正在使用facebook php sdk 这是我的密码: 现在我可以得到用户的电子邮件和姓名,我也可以保存用户的信息。但是,我如何才能让facebook用户成为drupal用户,该用户可以作为drupal globle用户工作?尝试使用drupal功能登录该用户 function facebook_block_block_view($delta='') { $block = array(); require 'src/facebook.php'; $a

我写了一个facebook登录模块,我正在使用facebook php sdk

这是我的密码:


现在我可以得到用户的电子邮件和姓名,我也可以保存用户的信息。但是,我如何才能让facebook用户成为drupal用户,该用户可以作为drupal globle用户工作?

尝试使用drupal功能登录该用户

function facebook_block_block_view($delta='') {
 $block = array();
 require 'src/facebook.php';
 $appid = variable_get('appid_variable', '');
 $secret = variable_get('secret_variable', '');
 $facebook = new Facebook(array(
    'appId'  => $appid,
    'secret' => $secret,
));
$user = $facebook->getUser();
if ($user) {
    try {
    // Proceed knowing you have a logged in user who's authenticated.
        $user_profile = $facebook->api('/me');
            $new_user = array(
    'name' => $user_profile['name'],
//  'pass' => 'Password',
    'mail' => $user_profile['email'],
    'signature_format' => 'full_html',
    'status' => 1,
    'timezone' => 'America/New_York',
    'init' => 'Email',
    'roles' => 'Roles',
);
$account= user_save(NULL, $new_user);

    } catch (FacebookApiException $e) {
        error_log($e);
        $user = null;
    }
}


$output='<a href="'.$facebook->getLoginUrl().'"> Login with facebook</a>';
   switch($delta) {
    case 'facebook_login' :
     $block['content'] = $output;
     break;
   }

  return $block;
}