このページを共有


1月のカレンダー



1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

カテゴリ一覧

ただの日記(945)
原付生活(3)
子育て日記(11)
PC関連(11)
もろもろ日記(914)

競馬+POG(1713)
当たらない予想と反省会(708)
POGネタ(58)
競馬について考える(19)
競馬もろもろ(224)
ダービーウィーク!(14)
2011年競馬場訪問記(27)
2012年競馬場訪問記(53)
2013年競馬場訪問記(62)
2014年競馬場訪問記(40)
2015年競馬場訪問記(43)
2016年競馬場訪問記(25)
2017年競馬場訪問記(36)
2018年競馬場訪問記(37)
2019年競馬場訪問記(34)
2020年競馬場訪問記(24)
2021年競馬場訪問記(37)
2022年競馬場訪問記(52)
2023年競馬場訪問記(70)
2024年競馬場訪問記(71)
2025年競馬場訪問記(63)
2026年競馬場訪問記(8)
地方競馬馬主(5)
ひとくち馬主(3)

ホームページ製作(362)
PHPの備忘録(14)
CSSの備忘録(5)
JavaScriptの備忘録(2)
ホームページもろもろ(289)
Flashの備忘録(12)
管理人の備忘録(21)
スマフォ用サイト作成(19)

自宅サーバ(372)
FreeBSD(17)
Apache(4)
PHP(5)
MySQL(18)
サーバもろもろ(154)
障害連絡(133)
リニューアルプロジェクト 2011-2012(41)

お仕事(48)
お仕事(48)

旅の記録・水曜どうでしょう関連(43)
水曜どうでしょう(11)
2009年四国お遍路(6)
2009年アンコールワット(5)
2010年ベトナム(3)
2010年いっそ九州(5)
2010年北海道179市町村(5)
2011年春の一人旅(2)
2011年四国お遍路(6)


先月までのネタ

2026年
2026年2月(4)
2026年1月(12)

2025年
2025年12月(7)
2025年11月(12)
2025年10月(3)
2025年9月(6)
2025年8月(4)
2025年7月(7)
2025年6月(7)
2025年5月(3)
2025年4月(3)
2025年3月(3)
2025年2月(11)
2025年1月(7)

2024年
2024年12月(11)
2024年11月(7)
2024年10月(10)
2024年9月(6)
2024年8月(6)
2024年7月(7)
2024年6月(7)
2024年5月(5)
2024年4月(5)
2024年3月(7)
2024年2月(8)
2024年1月(13)

2023年
2023年12月(11)
2023年11月(8)
2023年10月(10)
2023年9月(7)
2023年8月(9)
2023年7月(10)
2023年6月(6)
2023年5月(10)
2023年4月(5)
2023年3月(4)
2023年2月(6)
2023年1月(6)

2022年
2022年12月(9)
2022年11月(8)
2022年10月(5)
2022年9月(5)
2022年8月(2)
2022年7月(6)
2022年6月(9)
2022年5月(3)
2022年4月(3)
2022年3月(4)
2022年2月(7)
2022年1月(5)

2021年
2021年12月(8)
2021年11月(9)
2021年10月(4)
2021年9月(3)
2021年8月(2)
2021年7月(6)
2021年6月(12)
2021年5月(2)
2021年4月(8)
2021年3月(2)
2021年2月(7)
2021年1月(2)

2020年
2020年12月(8)
2020年11月(3)
2020年10月(4)
2020年9月(1)
2020年8月(2)
2020年7月(7)
2020年6月(6)
2020年5月(9)
2020年4月(11)
2020年3月(8)
2020年2月(5)
2020年1月(9)

2019年
2019年12月(4)
2019年11月(5)
2019年10月(7)
2019年9月(2)
2019年8月(2)
2019年7月(8)
2019年6月(2)
2019年5月(3)
2019年4月(2)
2019年3月(4)
2019年2月(3)
2019年1月(1)

2018年
2018年12月(8)
2018年11月(5)
2018年10月(10)
2018年9月(6)
2018年8月(1)
2018年7月(7)
2018年6月(5)
2018年5月(7)
2018年4月(19)
2018年3月(3)
2018年2月(3)
2018年1月(11)

2017年
2017年12月(14)
2017年11月(11)
2017年10月(18)
2017年9月(18)
2017年8月(21)
2017年7月(29)
2017年6月(26)
2017年5月(23)
2017年4月(18)
2017年3月(11)
2017年2月(11)
2017年1月(16)

2016年
2016年12月(25)
2016年11月(24)
2016年10月(30)
2016年9月(15)
2016年8月(16)
2016年7月(15)
2016年6月(18)
2016年5月(30)
2016年4月(28)
2016年3月(29)
2016年2月(26)
2016年1月(32)

2015年
2015年12月(30)
2015年11月(29)
2015年10月(30)
2015年9月(27)
2015年8月(28)
2015年7月(28)
2015年6月(28)
2015年5月(29)
2015年4月(30)
2015年3月(28)
2015年2月(26)
2015年1月(29)

2014年
2014年12月(31)
2014年11月(28)
2014年10月(31)
2014年9月(29)
2014年8月(29)
2014年7月(31)
2014年6月(31)
2014年5月(30)
2014年4月(30)
2014年3月(28)
2014年2月(27)
2014年1月(31)

2013年
2013年12月(29)
2013年11月(27)
2013年10月(29)
2013年9月(27)
2013年8月(28)
2013年7月(28)
2013年6月(29)
2013年5月(29)
2013年4月(30)
2013年3月(26)
2013年2月(24)
2013年1月(29)

2012年
2012年12月(28)
2012年11月(27)
2012年10月(28)
2012年9月(30)
2012年8月(31)
2012年7月(33)
2012年6月(32)
2012年5月(33)
2012年4月(35)
2012年3月(30)
2012年2月(27)
2012年1月(31)

2011年
2011年12月(25)
2011年11月(25)
2011年10月(28)
2011年9月(28)
2011年8月(28)
2011年7月(28)
2011年6月(27)
2011年5月(26)
2011年4月(16)
2011年3月(9)
2011年2月(11)
2011年1月(9)

2010年
2010年12月(12)
2010年11月(11)
2010年10月(8)
2010年9月(13)
2010年8月(10)
2010年7月(20)
2010年6月(6)
2010年5月(9)
2010年4月(2)
2010年3月(3)
2010年2月(5)
2010年1月(8)

2009年
2009年12月(9)
2009年11月(2)
2009年10月(4)
2009年9月(3)
2009年8月(1)
2009年7月(9)
2009年6月(3)
2009年5月(14)
2009年4月(10)
2009年3月(11)
2009年2月(9)
2009年1月(10)

2008年
2008年12月(1)
2008年11月(1)
2008年10月(1)
2008年9月(5)
2008年8月(1)
2008年7月(1)
2008年6月(2)
2008年5月(1)
2008年4月(1)
2008年3月(2)
2008年2月(7)
2008年1月(7)

2007年
2007年12月(11)
2007年11月(7)
2007年10月(8)
2007年9月(12)
2007年8月(11)
2007年7月(5)
2007年6月(16)
2007年5月(8)
2007年4月(2)
2007年3月(14)
2007年2月(2)
2007年1月(8)

2006年
2006年12月(4)
2006年11月(6)
2006年10月(7)
2006年9月(10)
2006年8月(9)
2006年7月(20)
2006年6月(13)
2006年5月(3)

2005年
2005年9月(13)
2005年8月(13)
2005年7月(18)
2005年6月(24)
2005年5月(26)
2005年4月(26)
2005年3月(27)
2005年2月(22)
2005年1月(26)

2004年
2004年12月(29)
2004年11月(29)
2004年10月(26)
2004年9月(23)
2004年8月(12)


最近よく読まれてるネタ



Excel VBAで「SPAT4自動投票システム」を作ってみました。
(2020年7月19日のネタ:187回)

地方競馬馬主 は全国の競馬場で馬主席 を使える?使えない?のまとめ。
(2023年12月3日のネタ:64回)

破損tgzファイルの復旧作業。
(2006年7月18日のネタ:31回)

2020年の牧場巡り その1:うらかわ優駿ビレッジAERU
(2020年8月1日のネタ:25回)

本日無事にサーバメンテナンスを終えました。
(2026年2月24日のネタ:21回)

管理人の当たらないG1予想!皐月賞編!
(2012年4月14日のネタ:20回)

管理人の当たらないG1予想!宝塚記念編!
(2016年6月25日のネタ:14回)

北海道牧場めぐり。その1。
(2013年10月20日のネタ:13回)

ジャパンCの当たらない予想!
(2011年11月26日のネタ:12回)

昨日はのんびりと東京競馬場へ行ってきました。
(2022年6月19日のネタ:10回)



最近のコメント



今日は改修工事真っ只中の #京都競馬場 (パークウインズ京都競馬場)へ行ってきました。(チョネ)

本日は笠松競馬場へ行ってきました。(あいべ)

管理人の今年の目標が一つ増えました…。(あああ)

まあそんなに書くことはありませんが…。(momo)

【管理人からご挨拶】 『The Sunday Breeze』は5月25日に開設19周年を迎えます。(アオヤギ)

4月からスタートする「Sunday Breeze POG!」の一部ルール追加について。(アオヤギ)

昨日「Sunday Breeze賞」の観戦に帯広競馬場へ行ってきました。(白イチゴ)

本日5月25日、「The Sunday Breeze」は18回目の誕生日を迎えました。(アオヤギ)

【「G1予想大会」プレリリース終了】皆様のご協力、本当にありがとうございました。(アオヤギ)

【再度お知らせとお願い】今週からの「G1予想大会」、新機能プレリリースを公開中です。(白イチゴ)



ネタの検索



管理人の競馬観戦記録


(2026年)

2011年以降の競馬観戦インデックス

JRA中山競馬場
1月5日

JRA小倉競馬場
1月25日

船橋競馬場
2月13日

大井競馬場
1月14日 ((その1))
1月14日 ((その2))

姫路競馬場
1月27日

高知競馬場
1月26日

佐賀競馬場
1月24日


管理人の競馬家計簿


(最近14日分)

2026年2月25日浦和
10勝  回収率:88.5%

2026年2月28日中山
31勝  回収率:174.4%

2026年2月28日阪神
114勝  回収率:48.6%

2026年2月28日小倉
114勝  回収率:54.9%

2026年3月1日中山
94勝  回収率:115.8%

2026年3月1日阪神
53勝  回収率:112.9%

2026年3月1日小倉
11勝  回収率:275.0%

2026年3月7日中山
115勝  回収率:104.7%

2026年3月7日阪神
62勝  回収率:118.7%

2026年3月8日中山
75勝  回収率:122.3%

2026年3月8日阪神
83勝  回収率:28.2%

2026年3月8日水沢
11勝  回収率:145.0%

2026年3月8日高知
11勝  回収率:277.1%

2026年3月10日水沢
10勝  回収率:0.0%

2026年3月10日大井
10勝  回収率:0.0%

2026年合計
24684
勝率:34.1%  回収率:64.5%
(万馬券:2本的中)

2025年合計
1117347
勝率:31.1% 回収率:62.3%
(万馬券:3本的中)

2024年合計
1394381
勝率:27.3% 回収率:70.5%
(万馬券:12本的中)

2023年合計
1772537
勝率:30.3% 回収率:71.2%
(万馬券:11本的中)


管理人のつぶやき


(皆様のフォローをお願いします。)

新メンバーズページのログイン方式が出来上がりました。

前回出した画面とあんまり変わっていないかもしれませんが



現在のメンバーズページはブラウザ標準のダイアログで
ユーザIDとパスワードを入力する仕組みになっていますが
新しいメンバーズページでは上のような画面でログインすることになります。

んで
以前はメンバー登録時に
「ログイン情報の保持」を指定できるようにしてありました。
現在は無条件でログイン情報を保持するようになりました。
まあそれはそれで問題ですが…。

新しいメンバーズページでは、
ログイン時に保持するかどうかを選択できる機能を実装。
「ログイン情報保持」にチェックした場合は
最終ログインから3か月間はこのログイン画面を介さずログインできる仕組みです。
現在多くのサイトで利用されている仕組みですので
ここで多く説明する必要はないかもしれません。


んで
管理人はWebエンジニアではありませんので
今回この部分にだいぶ時間をかけてしまったわけですが
自分の備忘録として一応その仕組みを書いておきます。

技術的な話なので、
興味ない方は読み飛ばしてください。

-----

まず基本として
ログイン画面と、ログイン画面以外のページでは
認証ロジックが異なります。

ログイン画面以外の認証ロジックは
・ログインしているかのチェック
 →ログイン状態ではない場合はログイン画面に自動遷移。
  このとき、ログイン成功後この画面に戻ってこられるように
  自分のURI(Request_URI)を渡す
 →ログイン状態の場合は通常通り表示。

ログイン画面の認証ロジックは
・ログインしているかのチェック
 →ログインしている場合はトップページへ遷移。
 →ログインしていない場合、もしくはログインに失敗した場合は
  ユーザIDとパスワードの入力をしてもらう。
  正しいIDとパスワードの場合は、受け取った前画面のURIへ遷移。
  前画面のURIがない(いきなりログイン画面に飛んできた)場合は
  トップページへ遷移する。

これをPHPでSessionとCookieを使って導入すると

ログイン画面以外の認証ロジックは
include(…)で共通処理としておく。しかもページの最初に処理。
(Headerが送信される前に処理しないとダメ)

session_start()してから
$_SESSIONのユーザIDとパスワードを取得し
取得できない場合はheader(ログイン画面)でログイン画面へ。
その際はsession_destroy()で中途半端なセッションは消す。

$_SESSIONで取得できた場合は
いったんsession_destory()でセッションを削除する。
そしてsession_regenerate_id()でセッションIDを再作成したうえで
session_start()して$_SESSION=…で
ユーザIDとパスワードとログイン情報保持on/offをセッションに保存。

これ、なんでdestroyするかってところがミソ。

destroyしないと
session_set_cookie_params()関数が効かないんですよね。

結局、ログイン情報を保持するかしないかは
Cookieをいつまで生かしておくかって話。
それはsession_set_cookie_paramsを使って設定しますが
session_startをやってから設定しても意味がないので
いったんdestroyしてsession_set_cookie_params()してから
再度session_startするということ。

一応ロジックを書いておきます。
(当然一部修整してあります)

// セッションからユーザIDとパスワードを取得
// request_URIも取得
$ユーザID = $_SESSION["ユーザID"];
$パスワード = $_SESSION["パスワード"];
$ログイン情報保持on/off = $_SESSION["ログイン情報保持on/off"];
$リクエストURI= $_SERVER["REQUEST_URI"];

// データベースでユーザIDとパスワードを検索
// このユーザ、ホントに登録されているよね?って確認
$わお = mysqli_query($DBリンク,"select * from メンバー情報テーブル " .
" where ユーザID=’$ユーザID’ and パスワード=’$パスワード’");
$わおrow = mysqli_fetch_array($わお);

extract($わおrow);

if ($ユーザID==NULL) {
// 登録ユーザがいない場合(セッションに記録されていない場合)は
// セッションを破棄して、リクエストURIを持ってログイン画面へ遷移する
session_destroy();
setcookie(session_name(), "", time()-42000, "/",".sundaybreeze.jp");
setcookie("request",$リクエストURI);

header("Location: /ログイン画面");
exit;
} else {

// 登録ユーザがいて、ログインされている状態の場合は
// いったんセッションを破棄する(このとき$_SESSION[]は消しちゃダメ)
session_destroy();

// 再度セッションを開始
session_name("メンバー用サイト");

// いったんCookieの有効期限を0(ブラウザ閉じたら消去)に設定
session_set_cookie_params(0,"/",".sundaybreeze.jp");

// ログイン情報保持がonなら、Cookieの有効期限を30日(60秒×60分×24時間×60日)でセット
if ($ログイン情報保持on/off=="on") session_set_cookie_params(60*60*24*60,"/",".sundaybreeze.jp");

// 改めてセッションスタート
session_start();

// 改めてセッションにユーザID、パスワード、ログイン情報保持on/offをセット
$_SESSION["ユーザID"] = $ユーザID;
$_SESSION["パスワード"] = $パスワード;
$_SESSION["ログイン情報保持on/off"] = $ログイン情報保持on/off;


書いてませんが
当然一番最初にsession_start()は書いてあります(session_name("メンバー用サイト")とともに)
それと、最後にsession_write_close()も書いてあります。

このロジックを作るときに
管理人はRequest_URIを勘違いしてRefererと書いていて
無限ループに何度も陥りました(Session関係ないし←アホ)

まあとりあえずこれで問題なく動いているので(無駄な部分がいくつかあると思いますが)
当面はこのまま行こうと思います。

---

ということで
最大の難所だったログインのロジックが出来上がりましたので
あとはシコシコと各ページを書いていくだけ。

まずはログインがらみで

・新規ユーザ登録
・登録情報の変更・削除

の2画面と、今回新たに作成する予定の

・パスワードを忘れた場合の問い合わせ画面

を作っていこうと思います。

この3画面の作成には、いくつかデータベースの構成変更も伴いますので
ちょっとまた時間がかかるかもしれません。
状況はこのブログで逐一ご報告できればと思っています。

-----

さて。
明日、管理人は今週2回目の夜勤でございます。

去年までは夜勤の際はブログをお休みしていましたが
今年はできるだけ書いていこうと思います。
365日かけるかなぁ?

大したことは書けません(PCは持って行かないので:ケータイから書くので

週末の予定とか
サイト更新の今後の話とか
ちょろっと書ければと思っています。

人気ブログランキングへ 


このネタへのコメント:


コメントはありません。
お名前(入力必須):
ログインID(SBメンバーズの方)(任意):
(SBメンバーズの方から頂いたコメントは、管理人の承認なしで書き込まれます。)

タグは使えません。

URL(任意):
メール(任意):

右に「さんでーぶりーず」と入力してください。