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
Php 使用CodeIgniter的Facebook应用程序_Php_Codeigniter_Facebook - Fatal编程技术网

Php 使用CodeIgniter的Facebook应用程序

Php 使用CodeIgniter的Facebook应用程序,php,codeigniter,facebook,Php,Codeigniter,Facebook,我正在使用iframe渲染构建一个Facebook应用程序。我想在后端使用CodeIgniter,我想知道CodeIgniter和Facebook的所有设置都应该设置成什么。我想知道的具体设置是: Facebook的画布回调url(是否应包括默认控制器和函数) php的基本url、索引页面、uri协议、启用查询字符串 还有什么我可能遗漏的吗 我如何设置Facebook交互目前正在创建一个新的控制器FBU控制器,该控制器添加到我的每个控制器从中继承的库文件夹中。FB_Controller继承自Co

我正在使用iframe渲染构建一个Facebook应用程序。我想在后端使用CodeIgniter,我想知道CodeIgniter和Facebook的所有设置都应该设置成什么。我想知道的具体设置是:

  • Facebook的画布回调url(是否应包括默认控制器和函数)
  • php的基本url、索引页面、uri协议、启用查询字符串
  • 还有什么我可能遗漏的吗
  • 我如何设置Facebook交互目前正在创建一个新的控制器FBU控制器,该控制器添加到我的每个控制器从中继承的库文件夹中。FB_Controller继承自Controller,并具有一个属性$facebook,该属性在构造时使用API密钥和secret进行实例化。不确定这是否是最好的方法

    我还使用mod_rewrite来摆脱index.php,这样就不会产生混淆了,代码如下:

    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /
    
        RewriteCond %{REQUEST_URI} ^system.*
        RewriteRule ^(.*)$ /index.php?/$1 [L]
    
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ index.php?/$1 [L]
    </IfModule>
    
    
    重新启动发动机
    重写基/
    重写COND%{REQUEST_URI}^系统*
    重写规则^(.*)$/index.php?/$1[L]
    重写cond%{REQUEST_FILENAME}-F
    重写cond%{REQUEST_FILENAME}-D
    重写规则^(.*)$index.php?/$1[L]
    
    我只在我的应用程序中使用facebook connect,自动登录已将其帐户连接到facebook帐户的访问者


    我在应用程序中使用。此库由创建。看看它,也许它可以让你开始创建自己的库。

    你不应该做任何特殊的事情来让Facebook使用你的CodeIgniter应用程序

  • 画布回调URL是应用程序的登录页。这是Facebook在用户接受你的应用程序后呈现给用户的页面。这通常是应用程序的根URL(与默认控制器的索引操作方法相对应的页面)。但是你可以将它设置为任何你喜欢的URL
  • 将base_url设置为web应用程序的根url,例如www.example.com/myapp/(请记住包含尾部斜杠)。如果计划从URL中删除index.php,请将index_page设置为空字符串。保留uri_协议并启用_query_字符串作为默认值,除非您有充分的理由不这样做
  • 同样,你不需要做任何特殊的事情来使你的CodeIgniter应用程序与Facebook兼容
  • 和您一样,我不喜欢在CodeIgniter应用程序的URL中包含index.php,因此我通过启用Apache的mod_rewrite并向项目的根目录添加.htaccess文件来删除它们,如下所示:

    RewriteEngine on
    RewriteCond $1 !^(index\.php|images|robots\.txt)
    RewriteRule ^(.*)$ index.php/$1 [L]
    

    你试过这么做吗?应用程序上的链接在Facebook上不起作用,除非uri_协议是path_info。但是,网络应用程序将无法工作(其中的链接)。我不明白。为什么链接在Facebook应用程序中不起作用,除非uri_协议设置为path_info?不确定为什么我必须这样做,但我只是在域名上做了一个条件语句,将其设置为path_info或uri_协议