勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

PHPでのcookie

      2014/07/03

aaa.comにログインフォームがあって、IDパスを入れて
ログインするとbbb.jpのindex.phpに入る。

aaa.comで「IDパスを記憶する」というチェックボックス
チェックを入れるとcookieで保存させたいということがあった。

知らなかったけどajaxみたいにcookieもクロスドメインは
できないみたい。

最初考えた時、bbb.jpでincludeとか使ってaaa.comにクエリを
投げてcookieをセットしようとしたけど上手いこといかず。

aaa.comでログインする際に一枚ページをかませて
遷移させるのが正解とのこと。

例)
・ログインフォーム
aaa.com/login.php
<?php
extract($_REQUEST);
if (isset($_COOKIE['login_id']) && isset($_COOKIE['login_pass'])) { //cookieがあればチェックボックスにチェック入れる為に変数セット
$checked = ' checked';
}
?>
<!--HTML部分-->
<form action="./redirect.php">
    <!--cookieがセットされていればデフォでテキストボックスに入力されており、チェックボックスがチェックされている状態へ-->
<input type="text" name="login_id" value="<?=$_COOKIE['login_id'];?>" />
<input type="text" name="login_pass" value="<?=$_COOKIE['login_pass'];?>" />
<input type="checkbox" name="id_pass_save" value="on"<?=$checked;?> />
</form>

cookie保存&遷移させるページ
aaa.com/redirect.php
<?php
extract($_REQUEST);
if ($id_pass_save == 'on') { //IDパス保存のチェックがあれば
if (isset($login_id)) {
setcookie('login_id',$login_id); //ID保存
}
if (isset($login_pass)) {
setcookie('login_pass',$login_pass); //パス保存
}
}
//bbb.jpに遷移させる。IDパスはクエリで投げる
header("Location:bbb.jp/index.php?login_id={$login_id}&login_pass={$login_pass}");
?>

 - PHP

  関連記事

CodeIgniterで共通の変数と定数を設定する

CodeIgniterで共通する配列が入った変数と、定数を設定したかった。以下に ...

PHPで%sとか%dとか

PHPで探し物していて%sとか%dとかいった記述があり 何これとなったのでメモ。 ...

PHPでゼロパディング

予め桁数を決めておいて、桁数未満の場合は0で埋めたい場合の処理。 str_pad ...

自動的に定義される定数

PHPファイルを解析中__LINE__という記述があり、 定数? とその場は思っ ...

PHPでメモリの使用率確認

PHPでメモリの使用率を確認。ついでに処理時間も一緒に表示。 /*ヘッダに書いと ...

MySQLで重複を除く

ユニークな値を取り出したいときに使う。 DISTINCT(ディスティンクト) S ...

PHPのセッションでログイン、ログアウトの管理。あとセッションが保存されない場合の対処。

セッションはほとんど使ったことがなく、 色々つまづいたのでメモ。 やりたかった事 ...

エラー管理

<? /*エラー管理*/ //画面上にエラー表示させるかどうか。0⇒非表示 ...

PHPでサイトURLからtitleとRSS用URLを取得

サイトのURLからRSS用URLとサイトタイトルを自動で取得したかった。その方法 ...

GoogleアナリティクスのデータをPHPで取得する方法

Googleアナリティクスの特定データをPHPで取得して、表示なりCSV化してほ ...