twitter ユーザのログアウト処理作成
#12 ログアウト処理を作ろう
http://dotinstall.com/lessons/tw_connect_php_v2/21912
を参考に
ログアウト処理を実装
index.php を最初に編集していく
まず、twitter ユーザ名をホーム画面で表示したいので
PHP部分にソースを追記していく
function h($s){ return htmlspecialchars($s,ENT_QUOTES,"UTF-8"); }
を追加して h() で簡単に使えるようにする
この htmlspecialchars() はHTMLの無害化のために使われる
詳しくは
http://php.net/manual/ja/function.htmlspecialchars.php
のリファレンスを参照
twitter ユーザ名で表示するには
<?php echo h($_SESSION['me']['tw_screen_name']); ?>
とすると
twitterユーザ名で表示される
これは callback.php で
$_SESSION['me'] = $user;
というように
me の中に twitter ユーザ情報を格納しているため
次にログアウト機能を実装する
vim logout.php
でファイルを作成し
require_once('config.php'); require_once('codebird.php'); session_start();
で
設定ファイル関連、セッションスタートを行う
$_SESSION = array();
でセッションを初期化
if(isset($_COOKIE[session_name())){
でクッキーの値があるか確認し
あるのなら、以下の処理を行う
setcookie(session_name(),'',time()-86400,'/tw_connect_php/');
で
setcookie() で cookieの値をセットする
time()-86400
は1日前の時間を指定
setcookie() については
http://php.net/manual/ja/function.setcookie.php
のリファレンスを参照
引数をメモすると
session_name(), クッキーの名前
time()-86400 クッキーの有効期限
‘/tw_connect_php/’ クッキーを有効にするパス
となる
そして
session_destroy();
セッションの破棄
header('Location: '.SITE_URL);
でトップ画面であるログイン画面に飛ばす