Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.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 IFrame中的静态FBML和FBML用户ID和用户名_Php_Fbml_Facebook Iframe_Xfbml_Fbjs - Fatal编程技术网

Php IFrame中的静态FBML和FBML用户ID和用户名

Php IFrame中的静态FBML和FBML用户ID和用户名,php,fbml,facebook-iframe,xfbml,fbjs,Php,Fbml,Facebook Iframe,Xfbml,Fbjs,我想知道,这个静态FBML标记在IFrame中是否仍然有效:- fb:userlinkuid=loggedinuser 我的第二个问题是,我们能否通过存储的Cokkies而不是FBML获取用户ID,因为facebook不允许我们访问用户数据。 因此,我发现使用Firebug可以获得用户Id,并存储在cookie中。 我希望限制用户多次访问我的Iframe。所以通过获取用户ID 我想检查一下,用户是否已注册。如果他已经注册了。他不能登记两次 我正在使用Cokkies进行尝试,但由于缺乏JAVASC

我想知道,这个静态FBML标记在IFrame中是否仍然有效:-

fb:userlinkuid=loggedinuser

我的第二个问题是,我们能否通过存储的Cokkies而不是FBML获取用户ID,因为facebook不允许我们访问用户数据。 因此,我发现使用Firebug可以获得用户Id,并存储在cookie中。 我希望限制用户多次访问我的Iframe。所以通过获取用户ID 我想检查一下,用户是否已注册。如果他已经注册了。他不能登记两次


我正在使用Cokkies进行尝试,但由于缺乏JAVASCRIPT知识,我不知道如何执行它。

将以下代码放入iframe中,您将获得登录用户id,然后对其进行检查约束

<?php   

   function parse_signed_request($signed_request , $secret ) {
$signed_request = $signed_request ? $signed_request : $_REQUEST['signed_request'];
$secret = $secret ? $secret : your_app_secret;

list($encoded_sig, $payload) = explode('.', $signed_request, 2);

// decode the data
$sig = base64_url_decode($encoded_sig);
$data = json_decode(base64_url_decode($payload), true);

if (strtoupper($data['algorithm']) !== 'HMAC-SHA256') {
error_log('Unknown algorithm. Expected HMAC-SHA256');
return null;
}

// check sig
$expected_sig = hash_hmac('sha256', $payload, $secret, $raw = true);
if ($sig !== $expected_sig) {
error_log('Bad Signed JSON signature!');
return null;
}

return $data;
}

function base64_url_decode($input) {
return base64_decode(strtr($input, '-_', '+/'));
}
  $request=$_REQUEST['signed_request']; 
  $appsecret = 'your_app_secret_key';
$new = parse_signed_request($request , $appsecret );
echo $new['user_id'];