私はこの質問をたくさん検索しましたが、この質問に対する特定の解決策は見つかりませんでした.多くの例といわゆる解決策を見てきましたが、どれもうまくいきませんでした. その上で、phpacademy のビデオを見て、ビデオとまったく同じように入力しています。
誰かがこれを重複としてマークする前に、私の唯一の質問は
これは、ローカル マシンでこれをテストしているためですか? 私の設定とビデオの唯一の違いは、チュートリアルがライブでホストされており、ローカル マシンでこれをテストしていることです。
この場合、ローカル マシンで PHP facebook SDK をテストするにはどうすればよいですか?
これが私の完全なコードです。これは私のメインコントローラーです
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class Fbapp extends MX_Controller {
function __construct() {
$this->load->library('fbconnect');
parent::__construct();
}
function index() {
echo "<a href='" . base_url() . "fbapp/gotofb'>Go To Facebook</a>";
}
function gotofb(){
$data = array(
'redirect_uri' => base_url() . "fbapp/redirected",
'scope' => "email,photo_upload"
);
$url = $this->fbconnect->getLoginUrl($data);
redirect($url);
}
function redirected(){
$user_id= $this->fbconnect->getUser();
echo $user_id;
}
}
これは、「fbconnect.php」という名前のライブラリ ファイルで、ライブラリ内に sdk ファイルが含まれ、ライブラリに含まれています。config 内に facebook.php を作成しました。これは、appId とシークレットを $config として保存します。
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
require_once(APPPATH . 'libraries/facebook/src/facebook.php');
class Fbconnect extends Facebook{
public $user = null;
function __construct() {
$ci =& get_instance();
$ci->load->config("facebook", true);
$config = $ci->config->item('facebook');
parent::__construct($config);
}
}
手順: 1.自分の URL にアクセスします。リンクをクリックします。2.Facebookのログインページに行きます。ログインします。3. リダイレクト uri にリダイレクトされ、0 が出力されます。
注: 私は codeigniter で開発しています。前もって感謝します。どんな助けでも大歓迎です!!