わらわらわら(www)をのけました。キャッシュこワい🙄

2022.08.23

Logging

こんにちは、今日は朝少しサーバーをイジって朝食後、外出しておりました。

まだ、不安定ですがwwwを除けてzip358.comに戻しました。除けた理由は気まぐれです、DNSのキャッシュが意地悪していて切り替えに時間を費やしてしまいましたが、一応無事に変更した形になります。

これが仕事だったら嫌だなって感じます、数ヶ月使用しているとキャッシュがDNSサーバーに蓄積されているので、その切替は各サーバー頼み。特に大企業じゃない限りDNSサーバーのキャッシュを削除してくれないでしょうね。

WEBサイトやWEBアプリを扱っている企業の担当者にとってサイト移行は胃が痛む仕事かと思います。お客様には見えないと言われたり上司からは早く見えるようにしてとか言われたりする場合もありますからね。因みに自分は徐々に移行する方法でサイト移行を済ませます。まずはDBを移行し、その後、ファイルなどを移行しホストを変えてみて上手く動作しているか確認後、IPアドレスを変更するという形です。

尚、メールサーバは大体、以前のサーバーを使用して頂けるならそうして貰います。

零細企業の場合、インフラからバックエンド、フロント全てに関わることもあるので良い経験になります。良い経験ですが大変です、言うがやすし行うは難しです。

タグ

358, com, db, DNS, web, www, zip, アプリ, いし, お客様, キャッシュ, これ, サーバー, サイト, ファイル, ホスト, , ワラ, 上司, 不安定, 今日, 仕事, 企業, 使用, 削除, 動作, 場合, 変更, 外出, 少し, , , 意地悪, 担当者, , 方法, 時間, , 朝食, 気まぐれ, 無事, 理由, 確認, 移行, , 自分, 蓄積, 限り,

大阪・京都、弾丸ひとり旅、総括編。もくもく反省会。

2022.05.22

Logging

おはようございます。田舎暮らしはいいですね😂。

先日、大阪と京都へ行ってきました。あまりにも緊張して胃が痛かったですが帰る頃には、治ってました。都会に旅するのは3,4年行ってなかったので何か(o|o)ww。はじめてのお遣い状態でした…。

行ったところは京都の伏見稲荷大社とあべのハルカス美術館で庵野秀明展をしていたので、そちらを観に行きました。まず、伏見稲荷大社は自分としてはいきなりあの千本鳥居からはじまるのかなとイメージしていたのですが、そうではなかったところがちょっと…マイナス点でした。そして彼女が入ればなぁもっと楽しめたかもと思いつつ伏見稲荷大社を後にしました。

因みに鳥居をくぐる時に願いを念じながらくぐると良いと書いていたので、これからの人生上手く行きますようにと願いながらくぐりました。お参りもせず、願い事がかなったら今度は御礼参りにいかないといけないな💦。

次に京都を後にし大阪、あべのハルカス美術館に行ったのですが、ここであべのハルカス美術館にはいるエレベーターを探すのに一苦労しました。結局、店のエレベーターの裏側?にあべのハルカス美術館のエレベーターはあります。やっとの思い出見つけ16階に行き庵野秀明展を観たのですが、最初、庵野秀明が影響を受けた者たちの資料とか色々ありましたが…あまり興味がなくてスルーしながら進み、途中、中学生時と高校生時に書いた油絵などをみて、あぁーこれは上手だわと思いつつ、いつエヴァの原画が見れるのかなどと思い、ちらちら展示物を観ていきました。そして終盤あたりにエヴァ展示しているコーナーがあり、撮影出来るものはパシャパシャ撮影して「あぁー来て良かったな」って・・・。原画が見えたことは凄く良かったですね。絵がうまいわほんとにそう思いながら、あべのハルカス美術館を後にしエレベーターで地下1階で降りて、大阪駅から千里中央駅へ向かい、千里中央駅に下車し千里中央駅(モノレール線)まで徒歩、千里中央駅のモノレール線で大阪空港駅(伊丹)に到着後、遅い昼めしを空港内で食べた後、お見上げを買い大阪から地元へ帰りました(システムトラブルのため、到着が20分遅れましたけどね🤔)。

弾丸旅行みたいだったけど行って良かったなとは思いましたが、やはり彼女か友人とかで行くほうが楽しいかなって思います。一人だとなんかテンション上がらない所がありますよね😭。

タグ

3,4, ww, あべのハルカス, イメージ, お参り, お遣い, これ, そちら, ところ, ハジメテ, ひとり旅, マイナス, 京都, 人生, 今度, 伏見稲荷大社, , 先日, , 反省会, 大阪, 庵野秀明, 弾丸, 彼女, , 御礼参り, , , , 状態, 田舎, 緊張, 総括, 美術館, , 自分, 都会, , 願い事, 鳥居,

WebAPIの作り方、考え方です?。サンプルコードもありますよ。

2021.12.24

Logging

昨日から風邪を引いてしまいました…。今日も体調が優れない状態ですが、昨日よりはマシになっています、因みに風邪というよりも腸と胃に菌がはいってしまって、それによる発熱です?。

さて、今回はPHP言語でWebAPIの作りましたので、ご報告致します、どんなAPIかというと生年月日とカウントしたい歳をPOSTすると、現在の年齢、今まで生きてきた日数、カウント日数がレスポンス(返却)されます。

【JavaScript入門 #8】WebAPIを叩いてみよう!async await構文を使うと簡単!【ヤフー出身エンジニアの入門プログラミング講座】

PHPコードは下記の通りになります。適当に作ったので間違っている箇所があるかもしれませんが、そこはご愛嬌でお願いできますでしょうか?、また、WebAPIの叩き方はご自身でお考えくださいませ。
サーバーに負荷が増したらWEBAPIは閉じます。

尚、WEBAPIのURLはこちらになります。

https://zip358.com/api/age/v1/type1/

<?php
header('Access-Control-Allow-Origin: *');
date_default_timezone_set('Asia/Tokyo');
$birth_date = (string)$_POST["birth_date"];
$max_age = (int)$_POST["point_age"];

/**
 * @param string $birth_date
 * @return string|false
 */
function check1($birth_date = ""): bool
{
    $flg = false;
    $str_date = explode("/", $birth_date);
    if (count($str_date) === 3) {
        $flg = true;
        if (!((int)$str_date[0] >= 1000)) {
            $flg = false;
        }
        if(((int)$str_date[0] > (int)date("Y"))){
            $flg = false;
        }
        if (!((int)$str_date[1] >= 1 && (int)$str_date[1] <= 12)) {
            $flg = false;
        }
        if ($flg) {
            if ((int)$str_date[1] === 2) {
                if (!((int)$str_date[2] >= 1 && (int)$str_date[2] <= 28)) {
                    $flg = false;
                }
                if ((int)$str_date[0] % 4 === 0) {
                    $flg = true;
                    if (!((int)$str_date[2] >= 1 && (int)$str_date[2] <= 29)) {
                        $flg = false;
                    }
                    if ((int)$str_date[0] % 100 === 0) {
                        $flg = true;
                        if (!((int)$str_date[2] >= 1 && (int)$str_date[2] <= 28)) {
                            $flg = false;
                        }
                        if ((int)$str_date[0] % 400 === 0) {
                            $flg = true;
                            if (!((int)$str_date[2] >= 1 && (int)$str_date[2] <= 29)) {
                                $flg = false;
                            }
                        }
                    }
                }
            } else {
                $last_day = [4, 6, 9, 11];
                if (array_search((int)$str_date[1], $last_day, false)!== false) {
                    if (!((int)$str_date[2] >= 1 && (int)$str_date[2] <= 30)) {
                        $flg = false;
                    }
                } else {
                    if (!((int)$str_date[2] >= 1 && (int)$str_date[2] <= 31)) {
                        $flg = false;
                    }
                }
            }
        }
    }
    return $flg;
}

/**
 * @param int $age
 * @return string|false
 */
function check2($age = 0): bool
{
    $flg = true;
    if ($age < 0) {
        $flg = false;
    }
    return $flg;
}


/**
 * @param string $birth_date
 * @param string $maxage
 * @return string $reslut
 */
function sumup($birth_date, $maxage)
{
    $reslut = [];
    $birth_date_array = explode("/", $birth_date);
    $birth_date = sprintf("%04d%02d%02d", $birth_date_array[0], $birth_date_array[1], $birth_date_array[2]);
    $today = date('Ymd');
    $age = floor(($today - $birth_date) / 10000);
    $day1 = new DateTime("{$birth_date_array[0]}-{$birth_date_array[1]}-{$birth_date_array[2]}");
    $day2 = new DateTime();    
    $interval1 = $day1->diff($day2, true);
    $baseday =  (int)($interval1->format('%a'));
    if ((int)$maxage <= (int)$age) {
        $pointday = 0;
    } else {
        $maxage--;
        $day3 = new DateTime((date('Y') + ($maxage - $age)) . "-{$birth_date_array[1]}-{$birth_date_array[2]}");
        $interval2 = $day2->diff($day3, true);
        $pointday = (int)($interval2->format('%a'))+1;
    }


    $reslut = [
        [
            "result" => "success",
            "age"=>$age ."歳",
            "baseday" => $baseday . "日(生きてきた日数)",
            "pointday" => $pointday . "日(" .($maxage +1). "歳まであと)"
        ]
    ];
    return json_encode($reslut);
}

if (!check1($birth_date)) {
    print json_encode([
        [
            "result" => "error",
            "error" => "string is invalid1"
        ]
    ]);
} elseif (!check2($max_age)) {
    print json_encode([
        [
            "result" => "error",
            "error" => "string is invalid2"
        ]
    ]);
} else {
    print sumup($birth_date, $max_age);
}

タグ

39, Access-Control-Allow-Origin, API, header, lt, php, POST, url, WebApi, お願い, カウント, コード, こちら, ご報告, ご愛嬌, ご自身, サーバー, サンプル, そこ, それ, まし, レスポンス, 下記, 今回, 今日, 体調, 作り方, 叩き, 年齢, 日数, 昨日, , 状態, 現在, 生年月日, 発熱, 箇所, 考え方, , , , 言語, 負荷, 返却, 通り, 適当, 風邪,