Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.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
Php 登录服务器端应用程序_Php_Facebook - Fatal编程技术网

Php 登录服务器端应用程序

Php 登录服务器端应用程序,php,facebook,Php,Facebook,我尝试使用facebook开发者提供的步骤: 但是,在重定向之后,它无法重定向回基本php页面。我的代码有什么问题吗 这是我的密码: require_once 'library/facebook.php'; $facebook = new Facebook(array( 'appId' => '*** My APP ID ***', 'secret' => '*** My Secret ***', 'fileUplo

我尝试使用facebook开发者提供的步骤:

但是,在重定向之后,它无法重定向回基本php页面。我的代码有什么问题吗

这是我的密码:

require_once 'library/facebook.php';
    $facebook = new Facebook(array(
    'appId'  => '*** My APP ID ***',
    'secret' => '*** My Secret ***',                
    'fileUpload' => true
));

$my_url = "https://apps.facebook.com/carnumberchecking";
session_start();

$user = $facebook->getUser();
$me = null;

if($user)
{
$uid = $facebook->getUser();
}else{
$url = $facebook ->getLoginUrl( array (
'scope' => 'publish_stream',
'req_perms' => 1,
'fbconnect' => 0
 ));
 echo "";                
}                  

$code = $_REQUEST["code"];
if(empty($code)) {  
$_SESSION['state'] = md5(uniqid(rand(), TRUE)); // CSRF protection  
$dialog_url = "https://www.facebook.com/dialog/oauth?    client_id=187384241402698&redirect_uri=" . urlencode($my_url) . "&state="
                . $_SESSION['state'] . "&scope=user_birthday,read_stream";
echo("<script> top.location.href='" . $dialog_url . "'</script>");
}

if($_SESSION['state'] && ($_SESSION['state'] === $_REQUEST['state'])) {
echo "1";
$token_url = "https://graph.facebook.com/oauth/access_token?"
        . "client_id=187384241402698&redirect_uri=" . urlencode($my_url)
        . "&client_secret=4e45477f9ed79f95fc4fd3af8f8a579d&code=" . $code;

$response = file_get_contents($token_url);
$params = null;
parse_str($response, $params);
}
require_once'library/facebook.php';
$facebook=新的facebook(数组)(
'appId'=>'***我的应用程序ID***',
“秘密”=>“***我的秘密***”,
“fileUpload”=>true
));
$my_url=”https://apps.facebook.com/carnumberchecking";
会话_start();
$user=$facebook->getUser();
$me=null;
如果($user)
{
$uid=$facebook->getUser();
}否则{
$url=$facebook->getLoginUrl(数组)(
'范围'=>'发布\u流',
'req_perms'=>1,
“fbconnect”=>0
));
回声“;
}                  
$code=$_请求[“code”];
if(空($code)){
$_SESSION['state']=md5(uniqid(rand(),TRUE));//CSRF保护
$dialog_url=”https://www.facebook.com/dialog/oauth?    client_id=187384241402698&redirect_uri=“.urlencode($my_url)。”&state=”
.$\会话['state']。“&scope=user\u birth,read\u stream”;
echo(“top.location.href=”。$dialog\u url。””;
}
如果($_会话['state']&&($_会话['state']===$_请求['state'])){
回声“1”;
$token_url=”https://graph.facebook.com/oauth/access_token?"
“client_id=187384241402698&redirect_uri=“.urlencode($my_url)
.“&client_secret=4E45477F9ED79F95FC4FD3AF8A579D&code=”.$code;
$response=file\u get\u contents($token\u url);
$params=null;
parse_str($response,$params);
}

你似乎在混合你在互联网上从各种来源找到的东西……大多是过时的教程……等等

如果您计划使用官方facebook PHP-SDK,那么这是登录过程的一个简单示例:

否则,按照您在上面发布的链接,如果您只是从上面编译示例代码段,您应该有一个完整的工作示例!!:

<?php 

   $app_id = "YOUR_APP_ID";
   $app_secret = "YOUR_APP_SECRET";
   $my_url = "YOUR_URL";

   session_start();

   $code = $_REQUEST["code"];

   if(empty($code)) {
     $_SESSION['state'] = md5(uniqid(rand(), TRUE)); // CSRF protection
     $dialog_url = "https://www.facebook.com/dialog/oauth?client_id=" 
       . $app_id . "&redirect_uri=" . urlencode($my_url) . "&state="
       . $_SESSION['state'] . "&scope=read_stream";

     echo("<script> top.location.href='" . $dialog_url . "'</script>");
   }

   if($_SESSION['state'] && ($_SESSION['state'] === $_REQUEST['state'])) {
     $token_url = "https://graph.facebook.com/oauth/access_token?"
       . "client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url)
       . "&client_secret=" . $app_secret . "&code=" . $code;

     $response = file_get_contents($token_url);
     $params = null;
     parse_str($response, $params);

     $_SESSION['access_token'] = $params['access_token'];

     $graph_url = "https://graph.facebook.com/me?access_token=" 
       . $params['access_token'];

     $user = json_decode(file_get_contents($graph_url));
     echo("Hello " . $user->name);
   }
   else {
     echo("The state does not match. You may be a victim of CSRF.");
   }