google サービスログイン画面作成

google サービスログイン画面作成

#06 ログイン画面を作ろう
http://dotinstall.com/lessons/google_connect_php_v2/9906
を参考に
ホーム画面でのログインチェック実装と
ログイン画面の作成

まずはログイン画面の確認

しかし、なにも表示されない
原因はいくつか考えられるけど
よくよく考えたら
vagrant 環境のほうには
mysql-devel をインストールしていなかった

しかも今回はremi レポジトリを使っているので
sudo yum install mysql-devel では
バージョンが古く、インストールでエラーがでる

このため

 sudo yum install -y --enablerepo=remi mysql-devel

でインストール

sudo vim  /etc/php.ini

でファイルを開いて
876行めに

extension=pdo.so
extension=pdo_mysql.so

を追記

変更を保存して

sudo service httpd restart

で apache 再起動

これでもダメなので確認してみたら
PDO

POD
になっていたり

h() の中で、return が書いていないなど
簡単なミスが多かった

わからなかったときの対処として
ドットインストールのようにソースがあるなら
コピペして新しいファイルをつくり
diff -w ソースのファイル コピペファイル
として
差分を表示すると
わかりやすくなる

これで、ようやく準備ができたのでログインチェック

これにはセッションを使うので

session_start();
を追記

ログイン判定には
if(empty($_SESSION['me'])){

で判定

これは、$_SESSION[‘me’]
の値が空なのかを
empty() で判定している

もし、空だったら
header() を使ってログインページに飛ばす

header('Location: '.SITE_URL.'login.php');
exit;

これで、ログイン画面にとばせるので
次にログイン画面になる
login.php を作成

ソースはHTMLがほとんどなので
cp base.html login.php でカスタマイズしたほうが楽

ここにはログインするリンクを作成する

<p>
<a href="redirect.php">Googleアカウントで Login</a></p>