Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.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
IE上的代码点火器、facebook应用程序和我令人耳目一新的烦恼_Facebook_Codeigniter_Internet Explorer 8_Refresh - Fatal编程技术网

IE上的代码点火器、facebook应用程序和我令人耳目一新的烦恼

IE上的代码点火器、facebook应用程序和我令人耳目一新的烦恼,facebook,codeigniter,internet-explorer-8,refresh,Facebook,Codeigniter,Internet Explorer 8,Refresh,我有一个FB应用程序(PHP/codeigniter)。。很好。。求爱。 然而,在IE中,它不断刷新。 铬和狐狸很好 我将在下面介绍我的连接类,但基本上,我的FB应用程序指向这一点,它确实很神奇,然后在会话的其余部分,用户将被传递到另一个控制器 以前有人有过这样的经历吗? 我在Win7上使用64位IE 8版,但其他人对其他版本和操作系统有抱怨。 我在谷歌上搜索过,但似乎(?)是唯一有这个问题的人….:-( 不管怎样,这是我的控制器 /** *@property Model\u user$Mod

我有一个FB应用程序(PHP/codeigniter)。。很好。。求爱。 然而,在IE中,它不断刷新。 铬和狐狸很好

我将在下面介绍我的连接类,但基本上,我的FB应用程序指向这一点,它确实很神奇,然后在会话的其余部分,用户将被传递到另一个控制器

以前有人有过这样的经历吗? 我在Win7上使用64位IE 8版,但其他人对其他版本和操作系统有抱怨。 我在谷歌上搜索过,但似乎(?)是唯一有这个问题的人….:-(

不管怎样,这是我的控制器

/** *@property Model\u user$Model\u user *@property Model_session$Model_session */ 类Blue_连接扩展控制器{

功能蓝色连接()
{
父::控制器();
$this->load->plugin('facebook');
}
函数索引()
{
$this->load->model('model_user','model_user');
$this->load->model('model_session','model_session');
$my_url=$this->config->item('facebook_url');
如果($this->session->userdata('user\u id')>0)
{
echo“window.location.href='/buzz/';”;
模具();
}
其他的
{
如果(!isset($_请求[“代码”])){
$dialog_url=”http://www.facebook.com/dialog/oauth?client_id=“$this->config->item('app_id')。”&scope=“.this->config->item('facebook_perms')。”&redirect_uri=“.urlencode($my_url));
echo“top.location.href=”$dialog_url.”;
模具();
}
$token_url=”https://graph.facebook.com/oauth/access_token?client_id="
.$this->config->item('app\u id')。“&perms=”.$this->config->item('facebook\u perms')。“&redirect\u uri=”.urlencode($my\u url)。“&client\u secret=”
.$this->config->item('app_secret')。“&code=“.$”请求[“code”];
$access\u token=file\u get\u contents($token\u url);
$graph_url=”https://graph.facebook.com/me?“$access_令牌;
$tmp\u graph=file\u get\u contents($graph\u url);
日志信息(“错误”,$tmp\U图形);
$user=json\u decode($tmp\u图形);
$image='1http://graph.facebook.com/'.$user->id./picture?type=large';
$user\u id=$this->model\u user->process\u user($user->id,$user->name,$user->email,$image);
$this->session->set_userdata(数组('fb_id'=>$user->id,'user_id'=>$user_id,'access_token'=>$access_token));
echo“window.location.href=”/blue_connect/“;”;
模具();
}
}

} 您是否在config.php中设置了$config['uri_protocol']='PATH_INFO'?我以前遇到过这个问题,这为我解决了这个问题。Codeigniter默认情况下不允许获取参数,因此无法设置会话。
如果这没有帮助,那么如果您使用的是JS SDK,请在window.location.reload();行中进行注释。

您是否在config.php中设置了$config['uri\u protocol']='PATH\u INFO';呢?我以前遇到过这个问题,这个问题已经为我解决了。Codeigniter默认情况下不允许获取参数,因此无法设置会话。
如果这没有帮助,那么在window.location.reload()中注释;行,如果您使用的是JS SDK。

感谢您的回复。.我确实设置了路径信息…我无法注释这行,因为我需要重定向iframe页面。仍然是同一个问题,因为没有任何更改…这就是重定向发生的原因,JS SDK从未实际获得会话。您可以使用PHP SDK$faceboo手动设置会话k->setSession('此处的会话',true)。第二个参数设置cookie,然后JS可以找到它。我通常只使用PHP重定向,JS SDK在我的经验中是不可靠的。今天,我所有应用程序上的注释框都因为它而无法工作…Sry,刚刚注意到您使用的是IE8,IE的某些版本不允许从iframe设置cookie。请尝试放置此标题在你的页面顶部:谢谢你的回复。我确实设置了路径信息…我不能注释掉那一行,因为我需要重定向iframe页面。仍然是同一个问题,因为没有任何变化…这就是为什么重定向发生了,JS SDK从未真正获得会话。你可以使用PHP SDK$facebook->setSession手动设置会话('SESSION HERE',true)。第二个参数设置cookie,然后JS可以找到它。我通常只使用PHP重定向,JS SDK在我的经验中是不可靠的。今天,我所有应用程序上的注释框都因为它而无法工作…Sry,刚刚注意到您使用的是IE8,IE的某些版本不允许从iframe设置cookie。请尝试放置此标题在页面顶部: /** * @property Model_user $model_user * @property Model_session $model_session */ class Blue_Connect extends Controller {

function Blue_Connect()
{
    parent::Controller();
    $this->load->plugin('facebook');
}

function index()
{
    $this->load->model('Model_user', 'model_user');
    $this->load->model('Model_session', 'model_session');

    $my_url = $this->config->item('facebook_url');

    if ($this->session->userdata('user_id') > 0)
    {
        echo "<script>window.location.href='/buzz/';</script>";
        die();
    }
    else 
    {
        if(!isset($_REQUEST["code"])) {
            $dialog_url = "http://www.facebook.com/dialog/oauth?client_id=" . $this->config->item('app_id') . "&scope=" . $this->config->item('facebook_perms') . "&redirect_uri=" . urlencode($my_url);
            echo "<script>top.location.href='" . $dialog_url . "'</script>";
            die();
        }

        $token_url = "https://graph.facebook.com/oauth/access_token?client_id="
            . $this->config->item('app_id') . "&perms=" . $this->config->item('facebook_perms') . "&redirect_uri=" . urlencode($my_url) . "&client_secret="
            . $this->config->item('app_secret') . "&code=" . $_REQUEST["code"];

        $access_token = file_get_contents($token_url);

        $graph_url = "https://graph.facebook.com/me?" . $access_token;

        $tmp_graph = file_get_contents($graph_url);
        log_message("error", $tmp_graph);
        $user = json_decode($tmp_graph);

        $image = 'http://graph.facebook.com/'.$user->id.'/picture?type=large';
        $user_id = $this->model_user->process_user($user->id, $user->name, $user->email, $image);
        $this->session->set_userdata(array('fb_id' => $user->id, 'user_id' => $user_id, 'access_token' => $access_token));

        echo "<script>window.location.href='/blue_connect/';</script>";
        die();
    }
}