修复问题希伯来在Facebook上

时间:2010-10-16 18:24:22

标签: php arrays facebook character-encoding hebrew

我的代码知道如何连接到用户的Facebook帐户,并采取他的名字。 这个功能确实运作良好,问题是,当我试图获得希伯来名字时,比我得到的更好。

charset = windows-1255 - 我也尝试过UTF-8,但我仍然感到非常恐怖。

对于gibrish示例: ''™'''''''''' ' -

代码:

require 'src/facebook.php';

$facebook = new Facebook(array(
  'appId'  => '1294881225',
  'secret' => '6d28eq8fe1',
  'cookie' => true,
));

$session = $facebook->getSession();

$me = null;
// Session based API call.
if ($session) {
  try {
    $uid = $facebook->getUser();
    $me = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
  }
}

// login or logout url will be needed depending on current user state.
if ($me) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl();
}
<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId   : '<?php echo $facebook->getAppId(); ?>',
      session : <?php echo json_encode($session); ?>, // don't refetch the session when PHP already has it
      status  : true, // check login status
      cookie  : true, // enable cookies to allow the server to access the session
      xfbml   : true // parse XFBML
    });

    // whenever the user logs in, we refresh the page
    FB.Event.subscribe('auth.login', function() {
      window.location.reload();
    });
  };

  (function() {
    var e = document.createElement('script');
    e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
    e.async = true;
    document.getElementById('fb-root').appendChild(e);
  }());
</script>

<?php echo "<font color=white>name: "  . $me['name']  . "</font>" ; ?>

感谢,

2 个答案:

答案 0 :(得分:0)

我解决了这个问题,我的编码notpad ++的定义并不好, 你需要将编码更改为utf-8。 感谢,

答案 1 :(得分:0)

你应该使用 SET NAMES'utf8';

连接到数据库并尝试插入值时。