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

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

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

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

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

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

このため

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

でインストール

1
sudo vim  /etc/php.ini

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

1
2
extension=pdo.so
extension=pdo_mysql.so

を追記

変更を保存して

1
sudo service httpd restart

で apache 再起動

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

POD
になっていたり

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

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

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

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

1
2
3
4
5
session_start();
を追記
 
ログイン判定には
if(empty($_SESSION['me'])){

で判定

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

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

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

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

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

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

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