見出し画像

第141回: instagramログイン機能の実装ver3.0。

こんにちは。NGE16です。

今回からログイン処理の実装を進めていきます。

instagramの接続

redirect.phpを作成して、アプリ設定のファイルを読み込む記述を加えます。

require_once('config.php');

セッションを開始する記述を加えます。

session_start();

instagramからデータを取得していくための記述を加えていきます。

if (empty($_GET['code'])) {
  $params = array(
    'client_id' => CLIENT_ID,
    'redirect_uri' => SITE_URL. 'redirect.php',
    'scope' => 'basic',
    'response_type' => 'code'
  );
} else {

}

URLを組み立てる記述を加えていきます。

$url = 'https://api.instagram.com/oauth/authorize/?'.http_build_query($params);

instagramにデータを飛ばす記述を行なっていきます。

header('Location: '.$url);

ユーザー情報を取得する記述を加えていきます。

$params = array(
  'client_id' => CLIENT_ID,
  'client_secret' => CLIENT_SECRET,
  'code' => $_GET['code'],
  'redirect_uri' => SITE_URL. 'redirect.php',
  'grant_type' => 'authorization_code'
);

URLを組み立てる記述を加えていきます。

$url = "https://api.instagram.com/oauth/access_token";

パラメーターを使って情報を取得する設定を行います。

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

$res = curl_exec($curl);
curl_close($curl);

jsonデータを扱うために、以下の記述を加えていきます。

$json = json_decode($res);

今回は以上になります。

次回は、ユーザー情報の格納を行なっていきたいと思います。
"instagramログイン機能の実装ver4.0。" へ続く。

この記事が気に入ったらサポートをしてみませんか?