Php 使用Facebook弹出窗口更改登录的宽度和高度

Php 使用Facebook弹出窗口更改登录的宽度和高度,php,html,css,facebook,Php,Html,Css,Facebook,如何使用Facebook弹出窗口更改登录的宽度和高度?默认情况下,它显示一个450x260 px的弹出窗口,因此我们无法看到登录表单(附带捕获)。如何更改弹出窗口的大小 默认弹出窗口大小,此处看不到登录表单: 我们需要调整其大小,以便查看登录表单: 我尝试过中建议的解决方案,但没有效果。任何帮助都将不胜感激 这是我的完整代码: <?php session_start(); define('YOUR_APP_ID', 'myidhere'); define('YOUR_APP_SECRE

如何使用Facebook弹出窗口更改登录的宽度和高度?默认情况下,它显示一个450x260 px的弹出窗口,因此我们无法看到登录表单(附带捕获)。如何更改弹出窗口的大小

默认弹出窗口大小,此处看不到登录表单:

我们需要调整其大小,以便查看登录表单:

我尝试过中建议的解决方案,但没有效果。任何帮助都将不胜感激

这是我的完整代码:

<?php
session_start();
define('YOUR_APP_ID', 'myidhere');
define('YOUR_APP_SECRET', 'mysecrethere');

function get_facebook_cookie($app_id, $app_secret)
{ 
    $signed_request = parse_signed_request(@$_COOKIE['fbsr_' . $app_id], $app_secret);
    $signed_request['uid'] = $signed_request['user_id']; // for compatibility 
    if (!is_null($signed_request))
    {
        $access_token_response = file_get_contents("https://graph.facebook.com/oauth/access_token?client_id=$app_id&redirect_uri=&client_secret=$app_secret&code={$signed_request['code']}");
        parse_str($access_token_response);
        $signed_request['access_token'] = $access_token;
        $signed_request['expires'] = time() + $expires;
    }
    return $signed_request;
}

function parse_signed_request($signed_request, $secret)
{
  list($encoded_sig, $payload) = explode('.', $signed_request, 2); 
  $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;
  }

  $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, '-_', '+/'));
}

if (isset($_COOKIE['fbsr_' . YOUR_APP_ID]))
{ 
    $cookie = get_facebook_cookie(YOUR_APP_ID, YOUR_APP_SECRET);
    $user = json_decode(@file_get_contents('https://graph.facebook.com/me?access_token=' .$cookie['access_token']));
}
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Facebook Login Connect for Website Demo</title>
</head>
<body>

<?php
if (@$cookie)
{
    ?>
    <h2>You Are Logged In <?= $user->name ?> </h2> <br />
    E-mail ID: <?= $user->email ?>
    <br />
    <a href="javascript://" onclick="FB.logout(function() { window.location='sandbox/facebook_login' }); return false;" >Logout</a>
    <?php
}
else
{
    ?>
    <h2>Welcome Guest! </h2>    
    <div id="fb-root"></div>
    <fb:login-button perms="email" width="width_value" show_faces="true" autologoutlink="true" size="large">Login with Facebook</fb:login-button>
    <?php
} ?>

<script src="http://connect.facebook.net/en_US/all.js"></script>   
<script>
 // Initiate FB Object
 FB.init({
   appId: '<?= YOUR_APP_ID ?>', 
   status: true,
   cookie: true, 
   xfbml: true
   });
 // Reloading after successfull login
 FB.Event.subscribe('auth.login', function(response) { 
    window.location.reload(); 
 });
</script>
</body>
</html>

Facebook登录连接用于网站演示
您已登录
电子邮件ID:
欢迎光临! 使用Facebook登录 //启动FB对象 FB.init({ appId:“”, 状态:正确, 曲奇:是的, xfbml:对 }); //成功登录后重新加载 订阅('auth.login',函数(响应){ window.location.reload(); });
尝试使用jquery操作dom的height属性

$('[whatever dom element]').attr([modify attributes]);

Mozilla Firefox出现问题,导致自动增长无法工作。当我升级到Mozilla Firefox 16.0.2时,问题会自动解决。

我不明白为什么我会因此而被否决?哎哟。这似乎是一个错误,因为我刚刚注意到它只发生在我的Firefox上,在Chrome上运行得非常好,在Firefox中窗口似乎不会自动增长,我错说了这个问题。可能与您/用户在Firefox中的JavaScript设置有关。如果“允许脚本:[]移动或调整弹出窗口大小”选项被禁用,则Facebooks脚本可能无法解决此问题(希望从一开始就以“足够大”的大小打开弹出窗口)。遗憾的是,我的情况并非如此,但这是一个方便的知识,谢谢。