勉強したことのメモ

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

  関連記事

セレクトメニューとテキストエリアの連動

やりたかった事は、 ・セレクトメニューで何れかを選択すると連動したテキストエリア ...

isset等、変数を調べる際の注意点

$strがNULLだったり0だったり空文字だったりする場合で、 if($str) ...

PHPで日時比較時の注意

PHPで日時を比較する際にミスがあったのでメモ。 基本形は下記。 $limit_ ...

画像削除用function

ファイルパス、拡張子、seq番号、画像番号を渡してあげるだけ。 拡張子部分があれ ...

mysqldumpが使えないレンタルサーバでMySQLのバックアップ

mysqldumpが使えないレンタルサーバで開発を行うことがあり、尚且つ他社に使 ...

画像をアップロードすると複数サムネイルを生成する方法

フォームで画像をアップロードすると、予め定めておいた大中小のサイズでサムネイル画 ...

MySQLiでDELETE文

MySQLiでDELETE文 ■ソース $mysqli = new mysqli ...

PHPでyoutubeから更新分の情報を取得する(スクレイピング)

「○○のサイトから自動更新分を持ってきて 自サイトに反映させらへん?」と以前に聞 ...

MySQLiで直近に挿入したオートインクリメントの値と次回挿入する値を取得する方法

phpとmysqliを使っている中で次回挿入するオートインクリメントの値と、前回 ...

PHPでクエリ内容を取得する

エラーログを確認している際によく分からない動作に なっているところがあった。 ペ ...