「独創アプリ開発日記」カテゴリーアーカイブ

独創アプリ開発日記 51日目 タイムゾーンの確認

昨日テキスト漫画のサイトが完全復旧したのですが、一つ気がかりなことがあります。

なぜかphpMyAdmin(DBを管理するツール)で見ると、テキスト漫画のサイトで利用しているDBレコードの更新時間が9時間未来になってしまいます。

ただしDB上でズレているだけで、テキスト漫画のサイト上で表示される時間はちゃんと更新した時間になっています。また、他のアプリ(ねこマタ)で利用しているDBレコードもちゃんとした時間になっています。

タイムゾーン設定が怪しいので確認してみました。

— OS(CentOS) —

$ date
Sun Dec  3 11:07:43 JST 2017

OSは JST(日本標準時) ですね。

— MariaDB —

MariaDB [text_manga]> select NOW();
+---------------------+
| NOW()               |
+---------------------+
| 2017-12-03 11:11:34 |
+---------------------+
1 row in set (0.00 sec)

あれ?ちゃんとした時間になっています。DBも日本時間だ。

MariaDB [text_manga]> show variables like '%time_zone%';
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | JST    |
| time_zone        | SYSTEM |
+------------------+--------+

system_time_zone は ホストマシンのタイムゾーンを設定するらしく、OSと同じです。time_zone は サーバの現在のタイムゾーン。初期値は’SYSTEM’で、サーバのタイムゾーンがシステムタイムゾーンと同じことを表すみたいです。こちらも日本時間で問題なさそう。

— php —

echo date('Y-m-d H:i:s');
echo date_default_timezone_get();

> 2017-12-03 11:14:39
> Asia/Tokyo

あれ?PHPも問題なし?全部日本時間で揃ってる?
(σ´∀`)

日本時間を指定して保存 > DBには未来の時間で保存(+9時間) > 読込時、保存時間に戻って取得(-9時間)

で、結局書き込んだ正しい時間で読み込み出来るから問題ないけど、気持ち悪いな・・・

mariaDBのドライバが、DBのタイムゾーンみてわざわざ+9時間分の調整してくれてるのかしら?

考えるのめんどいです。

もう時間の存在しない世界に行きたいです。

独創アプリ開発日記 50日目 TextManga完全復活

今日もテキスト漫画のサイトを復旧していました。50回目の今回はアカウント作成ページを復活しました。

これで全ての機能が復活しました。サイト完全復活です。

アカウントを作成してログインすると、自分専用のテキスト漫画が作成出来ます。「自分専用のみ表示」などの機能も使えます。自分専用のAA集を作成するのも良いのではないでしょうか。

自分専用にするには、ログインした状態で、初回保存時に「自分専用」を選択して保存して下さいね。

「だれでも編集」のリンクから編集できるテキスト漫画は、その名の通り誰でも変更できます。他の人の作ったテキスト漫画を改良してあげるのも良いかもしれません。

使い方は様々です。是非ご利用下さい。

独創アプリ開発日記 49日目 パスワードリセット機能

今日も今日とてテキスト漫画のサイトを復旧していました。

アカウント作成機能を復旧する前に、パスワードのリセット機能がまだ復活していないことに気づき、そちらを復旧していました。

パスワードリセット機能は正当なユーザであることを確認するために、一旦ユーザ様にメールを送ります。以下のような再設定メールが届きます。

uka.apple様

この度は、TextMangaのご利用をありがとうございます。
以下のURLからパスワードの再設定を行って下さい。

https://minnano.app/textmanga/index.php/リセットページはないしょだよ

以上、今後ともよろしくお願いいたします。

=============================
TextManga
https://minnano.app/textmanga
=============================
このメールに心当たりがない場合は、大変お手数ですが破棄していただきますようお願いいたします。

このメール記載のリセットページからパスワードを再設定します。行ったり来たりで、結構な画面数になっていたりします。5画面くらいあったかな・・・

しかし、無事復旧しました!
久々でパスワード覚えてない!という方も安心です!!

独創アプリ開発日記 48日目 ログイン機能復活!!

今日もテキスト漫画のサイトを復旧してました。今回は、ログイン機能が復活しました!!これで自分専用のテキスト漫画が作れまくれます!!

問題になっていたセッション処理は、以下のようなユーザークラスを作ることで手軽に保存や取り出しが可能になりました。session_startの前に、$_SESSIONがあるかどうか判断するのがミソです。


class MyClass {
    public static function setSession($name, $value) {
        if(!isset($_SESSION)){
            session_start();
        }
        $_SESSION[$name] = $value;
    }
    public static function getSession($name) {
        if(!isset($_SESSION)){
            session_start();
        }
        if (isset($_SESSION[$name])) {
            return $_SESSION[$name];
        }
        return null;
    }
}

残る復旧作業はアカウント作成機能くらいです。完全復活したら、テキスト漫画のスマホアプリ出したいなあ。

独創アプリ開発日記 47日目 セッション消えた

昨日の日記の通り、現在テキスト漫画のサイトを構築するのに利用しているフレームワークのLumenにはセッション管理機能がありません。

そこで、phpの生の?機能である$_SESSION変数を直に利用すれば解決するじゃん、俺って頭堅いなーとか言ってましたが、単純に$_SESSIONに値突っ込んだだけだと画面遷移したらセッション値が見事に消えました。

なんかstart_sessionとか、セッション使う前の準備があるみたいですね。

せっかくプリンやところてん食べたのになぁ・・・←意味不明

もうLumenやめてLaravelにしようかな・・・

独創アプリ開発日記 46日目 セッション

今日もテキスト漫画のサイトを復旧していました。

さて、ログイン処理ですが、ログイン情報をセッションに保存する必要があります。

Lumenで構築しているのですが、Lumenってフレームワークでセッション使えないから困ったな、全画面に隠しフィールドでログイン情報を保持して全ての画面遷移でリクエスト情報を引き継ごうかな、などと考えていました。

でもよくよく考えたらPHPのセッションって、フレームワーク使わなくても $_SESSION を使えば値を出したり入れたり出来るよなあとハッと気づきました。

いやー頭が硬かったです。

プリンやところてんを食べまくろうと思います。

独創アプリ開発日記 43日目 TextManga追加/更新機能が復活!

テキスト漫画の追加/更新機能が復活しました!

更新機能復活!
ヽ(´▽`)ノ
ワーイ!!!

このページからテキスト漫画を追加出来ます!!!

“コマ”の数字1〜3をクリックすると、該当コマの内容を表示/編集できます。”再生”ボタンを押すと、編集したコマが連続で切り替わって表示されます。各コマの表示時間はms(ミリ秒)単位で変更出来ます。納得行くまで編集したら、”保存”ボタンを押して下さい!!

作成したテキスト漫画は”貼り付け方法”のリンクから、ブログなどで動くテキストとして貼り付けることが出来ます!

テキスト漫画サイトの残作業としては、アカウント登録やログイン機能の復活のみです!
(アカウント登録していただくと、誰にも編集されない自分専用のテキスト漫画が作れます)

アニメGIF化機能もつけたいな〜〜〜
テキスト漫画を利用できるスマホアプリでも出そうかな〜〜〜

需要あるかなぁ・・・_(:3」∠)_