我有同一个目录中的所有文件(facebook.php,base_facebook.php,index.php)。我的服务器是Apache,并且都支持php。 我的代码:facebook php访问令牌
<html>
<body>
<?php
try
{
echo("STARTING<br>");
require("facebook.php");
}
catch(Exception $e)
{
echo("ERROR1: $e");
}
try
{
$facebook = new Facebook("***","###");
}
catch(Exception $e)
{
echo("ERROR2: $e");
}
$token = $facebook->getAccessToken();
echo("Access token: ".$token."<br>");
我的文本输出如下:
STARTING
ERROR1: Object id #1before create fb instance
Fatal error: Class 'Facebook' not found in /(FILE PATH)/index.php on line 16
Note: line 16 is: $facebook = new Facebook("***","###");
第一个catch语句是打印:对象ID#1。然后它执行我的下一个打印声明。然后它返回未捕获的致命错误。我在这里错过了什么?
为什么服务器不能得到正确的访问令牌?
你需要如果失败。我通常不会在请求中包装try/catch。如果找不到所需的文件,您希望脚本失败。除非你会尝试和优雅地处理。一旦你解决这个问题,这不是一个很可能的情况。 – mkaatman 2013-03-12 15:31:45
“Class'Facebook' not found” - 这是明显的消息我相信:)你是否能够包含任何其他文件? 'echo get_include_path()'可能会帮助 – 2013-03-12 15:44:11
@Ruslan Polutsygan,是的,我可以包含其他文件。我尝试了echo get_include_path()。它告诉我这是从这里包含的文件:。/ usr/share/php:/ usr/share/pear – Rilcon42 2013-03-12 15:57:09