居住証明書が必要になった件。

2024.01.30

Logging

おはようございます、アドセンスからお支払い時にシンガポール使うから居住証明が必要だよって警告が出た話。マイナンバーカードや免許証でも証明書のかわりになるみたいなんだけど、マイナカードも免許証も有効期限があるので、その都度更新申請しなくてはならないらしいので、自分は税務署へ居住証明を申請してきました。

green leafed plants inside greenhouse
Photo by Palu Malerba on Pexels.com

地方の税務署ってがらがら誰も開始直後にお客さんはいなかったので、すんなり申請できるかと思いきや住民票がいるらしく、申請書と住民票を提出しなくてはならないので翌日、再度申請に行きました。

その日のうちに発行してくれるとの事だったけど、待たなくてはならないので再再度翌日に取りに行き手間が結構かかりましたよ。そんな事が起きないためにPDF入力ファイルが税務署ホームページにあるので、手書きが面倒なひとは事前にダウンロードして記入して提出することをオススメします。

なお、官公庁のPDF入力ファイルは公式のAcrobatソフトで入力しないと日本語が入力出来ないので注意が必要です。エッジやChromeで開いて編集すると日本語漢字が入力出来ないというバグみたいなことが発生します。

明日へ続く。

タグ

Acrobatソフト, Chrome, Photo by Palu Malerba on Pexels.com, アドセンス, エッジ, かわり, シンガポール, バグ, ひと, マイナカード, 住民票, 免許証, 再度申請, 官公庁, 居住証明, 手書き, 手間, 税務署, 税務署ホームページ, 警告,

EC管理ツールを制作中です。

2023.08.22

Logging

おはようございます、EC管理ツールを制作中です。夏季休暇に少し前に前進しましたが、まだまだ作り込まないといけない部分は多くあります。ある程度、機能を追加したらリリースしたいと思いますが、現在のペースで行うとおそらく来年になりそうな気がします。あんまり頑張りすぎるとテンションが下がりそうなので自分のペースで徐々に作り上げていこうと思います。

EC管理ツールを制作中

個人開発として始めてとなるちょっと大掛かりなサービスですが、これが皆さまに受け入れられるかは未知数ですね。サブスクか無料で提供するかも含めてまだ未知数。お金を取りたいとは思っているけれど、値段設定はどうすれば良いかや規約などもちゃんとしとかないとなぁとか、いろいろお金を取るとなるとそこらへんも大事になるから・・・ね。因みにサポートは一切行わないようにしてバグなどは報告として送れる形にするつもりです。

タグ

EC管理ツール, サブスク, サポート, そこらへん, テンション, バグ, ベース, 個人開発, 値段設定, 制作中, 報告, 夏季休暇, 少し前, , 未知数, 来年, 機能, 皆さま, 良いかや規約, 部分,

この世界が仮想世界だと証明されたらどうなるか?

2023.08.09

Logging

おはようございます、この世界が仮想世界だと証明されたらどうなるか?100%この世界が仮想世界だと証明される事はない、証明されたとしても次の日にはバグの修正が走りその証明は間違っているものになるだろうというのが自分の考察です。

なので、創造者がこの世界を維持したいと思っている限り、この世界が仮想世界だと証明することは永遠に出来ないと思います。逆にもう良いやと思った瞬間、この世界は崩壊もしくは消滅する可能性がある。

Visualizing a Twin Earth in NVIDIA Omniverse

またメンテナンスのため、仮想世界を止めたとしても仮想世界で生きている人達にとっては何も分からないのである。時が止まったとしても何も理解することは出来ない。

自分はこの世界は仮想世界だと思っている派ですね。理由は無から有に変換されることはない恐らくないと思っているからです。初期の宇宙は無だったというこれ、なんだかハードディスクの書き込みが無い状態に似ていて、ビッグバンがOSのインストールに似ているようにも思えます。そして人がスーパーコンピューターを使用して気象予測などをシュミレーションする試みをしていますよね。人でもここまでの事が出来るのだから文明の進んだ知的生命体はそれ以上のことが可能だと思っています。恐らくひともそのうち初期の地球をシュミレーション出来るようになると思います。

まぁそんな理由から仮想世界だと思っているのです。

タグ

OS, インストール, うち初期, スーパーコンピューター, ハードディスク, バグ, ビッグバン, メンテナンス, 初期, 地球, 宇宙, 崩壊, 文明, , 気象予測, , , 知的生命体, 考察, 証明,

GW最終日。総括してみました、出来ないことだらけ?

2023.05.07

Logging

おはようございます、机の中を整理するとほとんどがゴミ🚯だった中の人です。さて、GWでやろうと決めていて出来なかったことは、個人開発だけかな。プログラミングはしていたのですが、バグの修正やちょっとした機能追加が主でアプリをリリースした、WEBサービスをリリースしたとかはない感じですね。

机の中を整理していたら、昔のアイディアノートが出てきたりして大きな収穫でした。今見るとヘンテコなもので、このままリリースしたりすると決済部分などの障壁になるじゃないかなと思うサービスですが、アイディアは面白いというのがチラホラあったので良かったです。

今、二番煎じのサービスを無料でリリースしてみたいなという事を考えていて、簡単なものから時間がかかる物までなんか作ってみたい気がします。気がするだけで終わるかも知れませんが・・・。

あと、このブログをテンプレート部分をどうにかしたいなとも思っています。今のテンプレートのデザインを組み込めるようにしないと何れ、WordPressのバージョンアップで現行のテンプレート使用できなくなる可能性(フルサイト編集 (Full site editing, FSE))もあるので、これは近いうちに対応したいと思っています。

タグ

FSE, Full site editing, GW, WordPress, アイディア, アイディアノート, ゴミ, テンプレート, テンプレート部分, バグ, プログラミング, ヘンテコ, 二番煎じ, 修正, 収穫, , , 現行, 近いうち, 障壁,

国民年金の支払いシステムにはバグがある!!

2023.03.22

Logging

おはようございます、国民年金の支払いシステムにはバグがある事が分かりましたので、ご報告したいのですが、いま、そのバグの手続き中なのでバグの内容は控えさせてもらいます。問題が解決したらこちらのブログの記事として掲載するととも、あの河野さんに問い合わせメールでも送ろうかと思います(半分本気)。

因みに今まで国民年金を支払ってきましたが、4月から厚生年金に切り替えられます有り難いことです。フルリモートで働き始めて、もう3ヶ月が経つのかと思うと感慨深いです。何より今までのフルリモートとは違い、全てをフルリモートで完結するので、何だかいまも不思議な感覚に陥ってしまいます。自宅で働くのは不思議ですよね。

因みに働く部屋と休む部屋は別にしています。そして端末のアカウントも別にしています。本当なら回線も別回線を引きたいところなのですが、そこはVPNに頼っている感じです‥。

そんな感じで頑張りたいと思っています😄。

タグ

VPN, アカウント, システム, バグ, フルリモート, 全て, 別回線, 半分, 厚生年金, 問題, 回線, 国民年金, 感じ, 感慨, 感覚, 手続き中, 河野さん, 端末, 自宅, 部屋,

サーバーの引っ越しのヒントです。いや答えですねw😌

2022.06.16

Logging

おはようございます。あと一ヶ月もすれば炎天下の下でお仕事をする人もいるでしょう。大変ですね。

昔はよくサーバーの引っ越しを仕事でしていました。代わりに誰か出来る人もいなかったので自分が行っていましたが、サーバーの引っ越しほど時間のかかる仕事はありません。

scp -r -p /var/www/html/ user@example.com:/home/user/www/
scp [コピー元のファイル] [コピー先のユーザー名@コピー先のホスト] [コピー先のファイル]

何より責任、重大ですから色々と経験して思ったのは、サーバーの移行作業後に何らかの「動かない」というバグとりを速やかに行えるかどうかが大事かと思います。それはある意味、経験が物を言う世界かもしれません。こんなズブの素人でも少しだけサーバーの事を理解できたので、今思えば良いことなのかもしれません。

因みに上記に記述しているコマンドを旧サーバー環境で実行すれば新サーバーへファイル転送出来ます。いちいちFTPソフトでダウンロードしてアップロードするという事を行わなくて良いです。そして何よりパーミッションやタイムスタンプまで引き継いでくれるので便利かと思います。

タグ

-p, -r, com, example, home, html, SCP, user, var, , www, お仕事, こと, コピー, コマンド, サーバー, それ, どり, バグ, ヒント, ファイル, ホスト, ユーザー, , 上記, , 世界, , , , 仕事, 何より, 作業, 大事, 大変, 実行, 少し, 引っ越し, 意味, , 時間, 炎天下, , 理解, 環境, 移行, 答え, 素人, 経験, 自分, 色々, 記述, , 責任,

最新記事を非広告記事で読みたい方用のページを作りましたよ😏。

2022.02.14

Logging

おはようございます、俊足で朝からコードを書いたりしていました😌。

さて、自分のサイトを広告無しだったら読んでも良いという人が少なからずいると思いまして、この度、テキストオンリーのページを作りました。このページでは最新記事しか読めません、過去記事を読みたい方はzip358.comよりサイトを参照くださいませ。

非広告ページ👇

https://zip358.com/tool/blog-non-ads/

因みにページの表示速度が若干遅いです、これはサーバーの処理に依存するものですのでこれ以上、速度を上げることは今の所出来ません。また、どんなプログラムなのか知りたいという方もいると思いますのでソースコードを掲載致します。これを非広告ページで見ると英字文字がずらっと並んでいるように見えると思いますが、バグではないですので悪しからず(ソースコードを記載した部分が表示されているだけです)。

尚、ソースコードを見てRSSだけで読み込みが出来そうだねって、指摘する人もいるかと思いますが自分のサイトのRSSは記事の中身が出力されない仕様でして、このようなコードになっています。取得できる方はもっと表示速度は早くなると思います・・・。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta name="Description" content="Enter your description here"/>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
<title>RSS 非広告 blog-zip358.com</title>
</head>
<body>
<div class="container">
    <div class="row">
            <?php
$rss = @simplexml_load_file("https://zip358.com/feed");
if($rss){
    ob_start();
    foreach($rss->channel->item as $key=>$val){
        ?>
        <div class="col-12">
            <p class="h3" ><?=$val->title?>[<a href="<?=$val->link?>">*読みやすい記事へ*</a>]</p>
            <p class="h4" ><?=$val->pubDate?> by <a href="https://twitter.com/zip358com">@zip358com</a></p>
            <p><?=context($val->link)?></p>        
        </div>
        <?php
    }
    print ob_get_flush();
}
?>
        </div>
    </div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.1/umd/popper.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js"></script>
</body>
</html>
<?php
/**
 * @param $link string
 * @return $reslut string
 */
function context($link=null){
    $reslut = "";
    if(is_null($link))return $reslut;
    $htmldata = @file_get_contents($link);
    $dom = new DOMDocument();
    $html = mb_convert_encoding($htmldata, "HTML-ENTITIES", 'UTF-8');
    @$dom->loadHTML($html, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
    $xpath = new DOMXPath($dom);
    $reslut = $xpath->query("//*[@id=\"article\"]/div[3]")[0]->textContent;
    return $reslut;
}

タグ

358, blog-non-ads, com, https, tool, www, zip, オンリー, コード, こと, これ, サーバー, サイト, ソース, ソースコ, テキスト, バグ, プログラム, ページ, もの, , , 依存, 俊足, 処理, 参照, 広告, , , 掲載, 文字, , 最新, , 自分, 若干, 英字, 表示, 記事, 記載, 速度, 過去, 部分,

パスコードをランダムで生成するコードです。JavaScriptで書いてみました。

2021.08.27

Logging

今日は朝から蒸し暑さを感じます。あの一週間も続いた雨はどこに行ってしまったのでしょうか?東京では立て続けに悲惨な事件が起きています、報道することにより模倣犯を増やしているような気がします。

さて、今日はパスコード(パスワード)をランダムで生成するコードをJavaScriptで書いてみました。パスコードの強度はそれ程、高くないかもしれませんが一応、パスコードを生成する事が出来ます。ソースコードを書いていてうっかりミスをしてしまいまして、無限ループを発生させてバグ取りに5分ぐらい費やしました。ループした原因は違う変数を判断文で使っていたという初歩的なミスです。この頃はそういうミスは稀ですが・・・その結果、無限ループに陥っていました。

パスコードというものを作ってみて案外簡単に作れるものだと実感。これを作る前にパスコードメーカーを作成するという動画を見ました。githubにソースコードも記載していましたので考え方は参考にしましたがコードは違うと思います。たにぐちさんの動画はvue.jsを使用してパスコードを作っているのに対して、自分はネイティブjsでパスコードを生成しているという違いがあります。

https://zip358.com/tool/PassCode/

JavaScriptでパスコードを生成するコード。
document.getElementById("btn1").addEventListener("click", () => {
    const mode = {
        mode0: !document.getElementById("mode0").value ? 8 : document.getElementById("mode0").value,
        mode1: document.getElementById("mode1").checked ? true : false,
        mode2: document.getElementById("mode2").checked ? true : false,
        mode3: document.getElementById("mode3").checked ? true : false,
        mode4: document.getElementById("mode4").checked ? true : false
    };
    const data = {
        txt_cnt: mode.mode0,
        txt1: mode.mode1 ? "0123456789" : "",
        txt2: mode.mode2 ? "ABCDEFGHIJKLMNOPQRSTUVWXYZ" : "",
        txt3: mode.mode3 ? "abcdefghijklmnopqrstuvwxyz" : "",
        txt4: mode.mode4 ? "#$&*@+-" : "",
    };


    // console.log(mode,data);

    let str = "";

    if (mode.mode1 || mode.mode2 || mode.mode3 || mode.mode4) {
        let txt_str = data.txt1 + data.txt2 + data.txt3 + data.txt4;
        do {
            str = "";
            for (let i = 1; i <= data.txt_cnt; i++) {
                str = str + txt_str.substr((getRandomInt(txt_str.length) - 1), 1);
            }
        } while ((() => {
            let flg = [];
            flg[0] = mode.mode1 ? /[0-9]/.test(str) : true;
            flg[1] = mode.mode2 ? /[A-Z]/.test(str) : true;
            flg[2] = mode.mode3 ? /[a-z]/.test(str) : true;
            flg[3] = mode.mode4 ? /[#|$|&|*|@|+|\-]/.test(str) : true;
            
            return (() => {
                let f = true;
                for (const key in flg) {
                    if (!flg[key]) {
                        f = false;
                    }
                }
                return f;
            })();
            return false;
        })() === false);
        document.getElementById("view").value = str;
    } else {
        alert("どれかを選択してください");
    }

});
function getRandomInt(max) {
    return Math.floor(Math.random() * max);
}

タグ

5, github, javascript, コード, こと, これ, ソース, どこ, バグ, パスコード, パスワード, ミス, メーカー, もの, ランダム, ループ, , , 事件, 今日, 作成, 判断, , 動画, 原因, 報道, 変数, 実感, 強度, 悲惨, , , 東京, 模倣犯, , 無限, 生成, 発生, 立て続け, 簡単, 結果, 記載, , ,

プログラミングは世界共通語なのかも。

2020.10.26

Logging

JavaScript ES6 Modules

英語がわからない方でもプログラミングコードを見れば何を書いているのか、わかってしまうのでそういう意味でプログラミングは世界共通語なのかもしれないなと思います。プログラミングで会話ができるそんなプログラミング言語ができたら、それはITエンジニアにとってかなり朗報なのかもしれないなとふと思いました。

そうなればバグの指摘なども簡単になるし、意思疎通も簡単に。これからITエンジニアになりたい方は英語は必須ですね。英語がわかれば海外からの仕事もうけれるし会社に雇われないフリーランスの仕事も軌道に乗りやすいかと思います。クラウドワークスやランサーズなどでは中々厳しいですね…。それで生活ができる人はほんの一部のひとだと思います。

お小遣い稼ぎならクラウドワークスやランサーズで出来るかと思いますが、生計を立てる事はほとんどの人が出来ないでしょう、なのでもしクラウドワークスやランサーズのような仕事の請負を行って生活していくには海外でも同じような活動を行っていかなければならいでしょう。

そういう意味でも英語は必須。新たな世界共通語を秀才なITエンジニアが開発してくれれば話は変わりますが、今の処、英語ができれば海外から仕事が取れます。因みに翻訳に頼らない日常の英会話ができると尚良いと。トイウコトデ、それらが出来ない方は、自分も含め学ばなければなりません。

地球語を読んで想像したことでした。

タグ

IT, エンジニア, お小遣い, かなり, クラウド, コード, これ, それ, バグ, ひと, フリー, プログラミング, ほとんど, ランサーズ, ランス, ワークス, 一部, 世界, , , 仕事, 会社, 会話, , 共通語, 必須, 意味, 意思, 指摘, , 朗報, 海外, 生活, 生計, 疎通, 簡単, 英語, 言語, 請負, 軌道,

自動化の波。

2020.09.11

Logging

自動化の波がすぐそこまで来ているような気がする。ITエンジニアの驚異はノーコードアプリだと感じます。あれはかなり驚異です。カスタマイズが柔軟性をましていくと思います、その背景には人工知能技術による自動プログラム技術の進化が著しい。

自動化の話で言えばFF7Rでは人工知能がゲームをプレイしてバグを感知するそうです、こういうのは今までテストプレイする人がいて、その人達が人海戦術でこなしていたことですが、スクウェアエニックスではそれを自動化し24時間体制でバグ取りしています。この方法は他社のゲームメーカーも取り入れるでしょう。

人工知能が出来ることは何なのか、必ず正しい答えがある、ルールが存在する。この2つがある仕事は全て人工知能に自動化されることは間違いないでしょう。いまは置き換わっていなくとも徐々に人工知能に仕事は奪われていき、7割の人は解雇されるかと思います。あと30年後にはほとんどのホワイトカラーの仕事は何も規制を設けなければ人工知能に置き換わってしまうと思います。

最後に残されているのは労働の仕事やクリエイティブ、サービス業になりますが、クリエイティブな仕事も徐々に人工知能に置き換わってしまうと自分は思っています、なので最終的にロボットでは出来ない仕事だけ残ると思います。

ただ、それはまだまだ先の話でありますが、近いうちにITエンジニアの仕事は人工知能に置き換わってしまうとは思っています。それは今後、10年の間に起きると思います。なのでこの職業で働けるのもあと10年ぐらいだなと・・・。

タグ

2, 24, 30, 7, FF, IT, アプリ, あれ, いま, エンジニア, カスタマイズ, かなり, ゲーム, ゲームメーカー, コード, こと, スクウェアエニックス, そこ, それ, テスト, ノー, バグ, プレイ, プログラム, ほとんど, ホワイトカラー, ルール, , 人工, 人海戦術, 仕事, 他社, 体制, , 全て, 存在, 感知, 技術, 方法, 柔軟性, , , 知能, 答え, 背景, 自動, 規制, 解雇, , 進化, 驚異,

わざわざ対策した、これでも。

2020.06.18

Logging

非同期通信する部分にデータ投げてアクセスカウンターをわざわざ増やしてくれる人がいたので、わざわざ対策した、これでも抜けてくるようだと違法な領域かと思います。
わざわざ対策しないといけないというのが、自分としては変だなと思うところ。
何故、そこまでするのか・・・。
意味がわからないが…。

そもそもあんぽんたんな自分に関わっても意味がないのではと思っている。トイレで目が覚めてアレ、アクセスが増えていると思って・・・。

一時間ばかり、ぼーけーってして10分ぐらい、対策用のコードを書いてバグとりして、まぁネタになるので今、ブログを書いています。

話全然変わるけど、Twitterで音声投稿が可能になるだってさってのをタイムラインで見てすぐにRTしました。

実装されたら面白そうだけど、いろいろと問題も出てきそうだと思います。デジタルツールってそういう所がありますよね。

ちなみに話戻して、ページを切り替えるとアクセスカウンターは増えます。その対応は出来ますがしません。どうぞアクセスカウンターを増やしてください。SEO的にもとても有り難いことなので・・・。

アクセスカウンターが増えて得することはあるけど、損することはないじゃないかと思います。初めて訪問されるユーザーにとってはアクセス数が多いページは信頼されやすいです。仕様的にはアクセスカウンター増えやすい仕様にあえてしてますよ。

数字マジック、数の印象は大体あると思います。客が並んでいるお店はもしかしたら美味しいかもと思い込むのと同じです。

タグ

10, rt, Twitter, アクセス, アクセスカウンター, アレ, あんぽんたん, いろいろ, コード, これ, そこ, タイムライン, ツール, データ, デジタル, トイレ, ところ, ネタ, バグ, ブログ, ページ, わざわざ, , , , 可能, 同期, 問題, , 実装, 対策, 意味, , 投稿, , 自分, , 通信, 違法, 部分, 音声, 領域,

WEBお問い合わせフォームのお値段はいったい幾ら?

2020.01.17

Logging

WEBお問い合わせフォームのお値段はいったい幾らなのか?
堀江貴文氏はデジタルの値段は限りなくゼロに近くなると言っていたけど、無料のWEB申し込みフォームやお問い合わせフォームはある。自分もお問い合わせフォームの簡易的な物を作ってみましたのでファイルをアップしますね。

テンプレートエンジンとしてtwig3.0を使用しています、そのため動作環境はPHP7.2以上になります。ソースコードの可変は行って構いません、またこのソースコードの動作保証などは致しません。WEB担当者様が確認を行いバグ等があれば修正を行ってください。

尚、Composerでtwigをインストール済みという事が前提となります。また送信部分やエラー処理についてはご自身で機能の追加が必要となります。


サンプルページ
https://zip358.com/tool/request/

<!DOCTYPE html>
<html lang="ja">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>お問い合わせ</title>
    <script src="https://code.jquery.com/jquery-3.4.1.min.js"
        integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
        integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
        integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
        crossorigin="anonymous"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"
        integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6"
        crossorigin="anonymous"></script>
    <script src="js/common.js"></script>
    <style>
        .jumbotron {
            background-color: #2bd4d0;
            color: #fff;
        }

        .btn-primary {
            color: #fff;
            background-color: #2bd4d0 !important;
            border-color: #2bd4d0 !important;
        }

        .input-group-text {
            background-color: #2bd4d0;
            border: 1px solid #2bd4d0;
        }
    </style>
</head>

<body>
    <div class="jumbotron jumbotron-fluid">
        <div class="container">
            <h1 class="display-4">お問い合わせ</h1>
            <p class="lead">必須項目を入力し送信ボタンを押してください。<br>DEMOのため送信はできません</p>
        </div>
        <div class="alert alert-warning" id="error_sendmail" role="alert">
        </div>
    </div>
    <form action="index.php" method="POST">
        <div class="container">
            <div class="row">
                <div class="input-group mb-3">
                    <div class="input-group-prepend">
                        <span class="input-group-text">お名前[必須]</span>
                    </div>
                    <input type="text" name="name" class="form-control" id="name" placeholder="name" value="{{name}}">
                </div>
                <div class="alert alert-warning" id="error_name" role="alert">
                </div>
                <div class="input-group mb-3">
                    <div class="input-group-prepend">
                        <span class="input-group-text">メールアドレス[必須]</span>
                    </div>
                    <input type="email" name="email" class="form-control" id="email" placeholder="name@example.com"
                        value="{{email}}">
                </div>
                <div class="alert alert-warning" id="error_email" role="alert">
                </div>
                <div class="input-group mb-3">
                    <div class="input-group-prepend">
                        <span class="input-group-text" id="basic-addon1">@</span>
                    </div>
                    <input type="text" name="twitter_account" class="form-control" placeholder="twitter account"
                        aria-label="twitter account" aria-describedby="basic-addon1" value="{{twitter_account}}">
                </div>
                <div class="input-group mb-3">
                    <div class="input-group-prepend">
                        <span class="input-group-text">お問い合わせ内容[必須]</span>
                    </div>
                    <select name="meun" class="form-control" id="exampleFormControlSelect1">
                        {% for selectop in meun_option %}
                        <option value="{{selectop.value}}" {{ selectop.value == selectoped ? " selected":"" }}>
                            {{selectop.name}}</option>
                        {% endfor %}
                    </select>
                </div>
                <div class="alert alert-warning" id="error_meun" role="alert">
                </div>
                <div class="input-group">
                    <div class="input-group-prepend">
                        <span class="input-group-text">コメント[必須]</span>
                    </div>
                    <textarea name="comment" rows="10" class="form-control" aria-label="コメント">{{comment}}</textarea>
                </div>
            </div>
            <div class="row">
                <footer class="blockquote-footer">
                    <small class="text-muted">
                        ご自由に記入ください。
                    </small>
                </footer>
            </div>
            <div class="alert alert-warning" id="error_comment" role="alert">
            </div>
            <button type="submit" class="mt-2 btn btn-primary btn-lg btn-block">送信する</button>
        </div>
    </form>
</body>

</html>
<?php
session_start();
require __DIR__ . '/vendor/autoload.php';
use Twig\Environment;
use Twig\Loader\FilesystemLoader;

$loader = new FilesystemLoader(__DIR__.'/templates');
$twig = new Environment($loader);
$meun_option = json_decode(file_get_contents("js/select.json"));

$form = ["name","email","twitter_account","meun","comment"];
$data = [];

if($_POST){
	foreach($_POST as $key=>$val){
		$_SESSION[$key] = strip_tags($val);
	}
}
if($_SESSION){
	foreach($_SESSION as $key=>$val){
		$_SESSION[$key] = strip_tags($val);
	}
}

foreach($form as $key => $val){
	$data[$val] = $_SESSION[$val]?$_SESSION[$val]:"";
}

extract($data);

print $twig->render('index.html.twig',["name"=>$name,"email"=>$email,"twitter_account"=>$twitter_account,"selectoped"=>$meun,"comment" => $comment,"meun_option"=>$meun_option]);

タグ

3.0, 358, 7.2, com, Composer, DOCTYPE, gt, html, https, lt, php, request, tool, Twig, web, www, zip, アップ, インストール, エラー, エンジン, お問い合わせ, コード, ご自身, サンプル, ゼロ, ソース, ため, デジタル, テンプレート, バグ, ファイル, フォーム, ページ, , 使用, 保証, 修正, 値段, 処理, 前提, 動作, 堀江貴文, 幾ら, 必要, 担当者, 機能, 無料, , 環境, 確認, 簡易的, 自分, 追加, 送信, 部分,

iPhoneXは欲しいけど見送りな訳。

2017.09.13

Logging


iPhoneXは欲しいけど見送りな訳は
至って簡単なことなんだけど、リニューアルされた端末だから
いろいろと問題が起きる可能性が高いと思います、なので自分は今回の
iPhoneXは見送ります。今回買いなのは、おそらくiPhone8やiPhone8 Plusなのではないかな?
iPhone8などは今回が最終形態な感じだと思うので・・・。
ハード的なバグなども比較的にないような感じがします。
恐らくだけど、iPhone9は販売されないじゃないのか?
これからは先に販売される端末は名称が変更されそう例えば
iPhoneXの次期端末はiPhoneX-1とかそういう名称に変わりそうな予感がします。

タグ

iPhone8, iPhone8 Plus, iPhone9, iPhoneX, iPhoneX-1, ハード的, バグ, 予感, 可能性, 名称, 探求, 最終形態, 次期端末, 見送り, 覚醒, , 道しるべ,

ios9.2.1がリリースした、即インストールするべし!?なぜ?

2016.01.20

Logging


ios9.2.1がリリースした、即インストールするべし!?なぜ?
その訳はパーセンテージで残量を表示している方はお気づきだと思いますが、残量にバグがあり
バッテリーを消費しても一向に残量が減らないというバグがあるからです。
今日の朝、ios9.2.1のアップデートを行ったところバグが解決されました。アップデート前は
残量が90%だったものがアップデート後は65%まで減りました。
今回のios9.2.1のアップデートはバグの修正とセキュリティーのアップデートが主になります。
ちなみにios10ではLTEより100倍高速通信ができるLi-Wiの機能が搭載される可能性があるらしいです。
100倍高速通信・・・通勤時に動画などを見たりする人には需要がありそうですが・・・
そう使わない自分みたいなタイプには宝の持ち腐れみたいな気がします。
それよりもLTEの通信料金を値下げしてもらいたいものです。

タグ

10, 100, 65, 9.2.1, 90, iOS, Li-Wi, LTE, アップデート, インストール, セキュリティー, それ, タイプ, ところ, パーセンテージ, バグ, バッテリー, もの, リリース, , 今回, 今日, 修正, 値下げ, 動画, 可能性, 宝の持ち腐れ, 搭載, 料金, , , 機能, 残量, , 消費, 自分, 表示, 解決, , 通信, 通勤, 需要, 高速,

WEBセキュリティと人為的なバグ。

2015.12.06

Logging


先日、人為的なミス(コードミス)のため、何度かテスト用のファイルなどが
WEB上から吹っ飛んで消えちゃったっていう事象が発生した。
原因は自分のコードの書き方のミスだった・・・。
それに気付くまで謎の事象だった。
最初に自分がまず疑ったのがハッキングだったが
サーバ会社からの返答は侵入した痕跡がないとの事で
疑わしきは実行ファイルということだった。
結果、調べていくと実行ファイルのメソッドに
値が入っていなかったため一部のディレクトリを
消して良い所を全部ディレクトリが一括で消していた。
書いたのは自分です。
大体、バグっていうのは書いた本人は気づきにくいもの。
特にエラーがないバグはテストを行った時に出現したりして
そのバグ取りに大体、必死になることが多い。
結局、原因を見つけたのは社長だったという話ですが
今回のことで自社のサーバを持つことになったのが
何とも言えないのだ。
今回の原因は過信と浅いネットワーク知識やWEB知識が
問題になったんだろうと思う。そういう事もあって
WEBセキュリティ教室という本を購入したが・・・
これが今までのsqlインジェクションとかよりも深い内容の
攻撃手法が書かれていて正直、いまの自分には
半分程度の理解しか得れなかった。
 

タグ

sqlインジェクション, Webセキュリティ教室, エラー, サーバ, サーバ会社, バグ, バグ取り, メソッド, 事象, 何度かテスト用, 全部ディレクトリ, 原因, 実行ファイル, 徳丸浩, 書き方, 浅いネットワーク知識, 痕跡, 過信,

cakePHPを勉強しています。

2015.06.28

Logging


cakePHPを勉強しています。昨日から丸一日、ブログ更新もそっちのけでcakePHPで掲示板の作成をしてましてました。何とかベースが制作出来た感じですが、まだまだ改良するべきところが多いので公開まではしばらくかかると思います。勉強していてつまずいて参考書が必要だなと思ったわけですがいまのところ、購入していません。
一番のつまずきは、ファイル名やDB名などを名前の振り方やモデルやビューなどの関係などありとあらゆる事を理解するのに時間がかかりました。間違っていないはずなのにと思っていた事柄がうまく行かなかったわけが凄く単純なミスだったりと・・・言うこともあり。そのバグを探すのにかなりの時間を潰しました。結果的にこういう積み重ねで覚えていくしか無いだろうと思いますが、出来ないと時間だけが過ぎてしまい休みが台無しになってしまいます。
トイウコトデ、本日は休日を消化します(´∀`)。

タグ

cakePHP, DB名, つまずき, トイウコトデ, ところ, バグ, ビュー, ファイル名, ベース, モデル, 事柄, 休み, 休日, 作成, 公開, 参考書, 振り方, 掲示板, 時間, 積み重ね,

朝早起きしてWPを削除してWP4.2を入れ直してた。

2015.04.28

Logging


朝早起きしてWPを削除してWP4.2を入れ直してた。WP4.1とかからアップデートするとおそらくプラグインが影響して記事の新規投稿や編集が出来なくなるというバグがあるみたいです。WordPressJPの対応を待つより、バッアップを取ってDBを削除して再度、新規にWPを入れ直した方が良いと判断して、早起きしてゴニョゴニョと作業してました。がっしかしpingリストのバッアップを取っていなかった事が発覚!!
また同じようなことをしそうなのでリストUPしときます。

http://blog.goo.ne.jp/XMLRPC
http://blogsearch.google.co.jp/ping/RPC2
http://blogsearch.google.com/ping/RPC2
http://ping.bloggers.jp/rpc/
http://ping.exblog.jp/xmlrpc
http://ping.fc2.com/
http://api.my.yahoo.com/RPC2

 

タグ

db, pingリスト, WordPressJP, WP4.1, WP4.2, アップ, ゴニョゴニョ, バグ, プラグイン, 再度, 新規投稿, , 発覚, 編集, 記事,

Accessのさんぷるコードができましたので(´Д`)貼っときます。

2014.08.21

Logging

突貫工事で作ったのでバグは多少あると思いますが{例えばsql インジェクション対策とか。}、Accessのsampleコードができましたので貼っときます。なお、これで何が出来るかって言えばDBの修正、追加、削除といった基本的な動きをします{挙動不審ぎみ嘘!?}。若干、ソースコードを弄くれば使い回しが出来るようにしております。飯くったり他のことをしながらもガリガリとコードを書きました。ちなみにAccessのViewerをマイクロソフトからダウンロードすると動作すると思います。ファイルは下記からダウンロードください。 追記:暇な時に改良していきますので( ゚д゚)ノ ヨロシクとコメントも暇があれば書いときます。そして無駄なコードがありますが、それも軽量していくつもりです(`・ω・´)。ちなみにいまはDBを空にすると落ちますので・・・・(直しました。)。?samplezip358.zip?[https://zip358.com/tool/samplezip358.zip][08/21 11:26]

Option Compare Database
Public db_x As Long
Public max As Variant
Function sel_all(tablename As Variant, tal_valname As Variant) As Variant
    Dim x As Long
    Dim y As Long
    Dim sql As String
    Dim RS As DAO.Recordset
    Dim db As DAO.Database
    Dim hoge(999, 999) As Variant
    Dim val_n As Variant
    Dim val As Variant
    Set db = CurrentDb
    sql = "SELECT * FROM " & tablename & " ORDER BY ID ASC;"
    MsgBox sql
    Set RS = db.OpenRecordset(sql)
    Do Until RS.EOF
        For y = 0 To UBound(tal_valname)
            hoge(x, y) = RS.Fields(tal_valname(y))
        Next y
        RS.MoveNext
        x = x + 1
    Loop
    Set db = CurrentDb
    sql = "SELECT MAX(ID) as maxs  FROM " & tablename & ";"
    MsgBox sql
    Set RS = db.OpenRecordset(sql)
    max = RS.Fields("maxs")
    db_x = x - 1
    Set db = Nothing
    sel_all = hoge
End Function
Function up_in(chk As Boolean, tablename As Variant, tal_valname As Variant, tal_val As Variant, ID As Long) As Variant
    Dim sql As String
    Dim RS As DAO.Recordset
    Dim db As DAO.Database
    Dim hoge_valname As String
    Dim hoge_val As String
    Dim hoge As Variant
    If chk = True Then
        For i = 0 To UBound(tal_valname)
            hoge_valname = hoge_valname & tal_valname(i) & ", "
        Next i
        hoge_val = sql_str(tal_val, "", "", True)
        sql = "INSERT INTO " & tablename & " (" & Left(hoge_valname, Len(hoge_valname) - 2) & ")VALUES (" & hoge_val & ");"
    Else
        hoge_valn_val = sql_str("", tal_valname, tal_val, False)
        sql = "Update " & tablename & " Set " & hoge_valn_val & " WHERE ID = " & ID & ";"
    End If
    MsgBox sql
    Set db = CurrentDb
    db.Execute (sql)
    Set db = Nothing
    up_in = True
End Function
Function del(tablename As Variant, tal_valname As Variant, tal_val As Variant) As Variant
    Dim sql As String
    Dim RS As DAO.Recordset
    Dim db As DAO.Database
    Dim hoge As Variant
    sql = "DELETE FROM " & tablename & " WHERE " & tal_valname & " = " & tal_val & ";"
    MsgBox sql
    Set db = CurrentDb
    db.Execute (sql)
    Set db = Nothing
    del = True
End Function
Function sql_str(hoge As Variant, tal_valname As Variant, tal_val As Variant, chk As Boolean) As Variant
    Dim i As Long
    Dim hoge_str As Variant
    If chk = True Then
        For i = 0 To UBound(hoge)
            If IsNumeric(hoge(i)) Then
                hoge_str = hoge_str & hoge(i) & ", "
            Else
                hoge_str = hoge_str & "'" & hoge(i) & "', "
            End If
        Next i
    Else
        For i = 0 To UBound(tal_valname)
            If IsNumeric(tal_val(i)) Then
                hoge_str = hoge_str & tal_valname(i) & " = " & tal_val(i) & ", "
            Else
                hoge_str = hoge_str & tal_valname(i) & " = '" & tal_val(i) & "', "
            End If
        Next i
    End If
    sql_str = Left(hoge_str, Len(hoge_str) - 2)
End Function

↑クラスdbソースコード

Option Compare Database
Dim max As Long
Dim ID As Long
Dim val_val As Variant
Private Sub Form_Load()
lod
End Sub
Sub lod()
    Dim db As db_db
    Dim val_name As Variant
    Dim x As Long
    Set db = New db_db
    val_name = Array("ID", "表題", "数値", "文字")
    val_val = db.sel_all("tableone", val_name)
    max = db.max + 1
    If cmb.ListCount > 0 Then
        For x = 0 To cmb.ListCount - 1
            cmb.RemoveItem 0
        Next
    End If
    For x = 0 To db.db_x
        cmb.AddItem val_val(x, 1)
    Next
    Set db = Nothing
End Sub
Private Sub cmb_Click()
    If cmb.ListIndex >= 0 Then
        Viw cmb.ListIndex
    End If
End Sub
Private Sub del_btn_Click()
    Dim db As db_db
    Dim hoge As Variant
    Set db = New db_db
    val_name = Array("ID", "表題", "数値", "文字")
    If ID > 0 And max > 1 Then
        hoge = db.del("tableone", "ID", ID)
    End If
    Set db = Nothing
    lod
End Sub
Private Sub in_btn_Click()
    Dim db As db_db
    Dim val_name As Variant
    Dim val As Variant
    Dim hoge As Variant
    chkchk
    val_name = Array("ID", "表題", "数値", "文字")
    val = Array(max, cmb, suuzi, moji)
    Set db = New db_db
    hoge = db.up_in(True, "tableone", val_name, val, max)
    Set db = Nothing
    lod
End Sub
Private Sub upd_btn_Click()
    Dim db As db_db
    Dim val_name As Variant
    Dim val As Variant
    Dim hoge As Variant
    chkchk
    val_name = Array("表題", "数値", "文字")
    val = Array(cmb, suuzi, moji)
    Set db = New db_db
    If ID > 0 And max > 1 Then
        hoge = db.up_in(False, "tableone", val_name, val, ID)
    End If
    Set db = Nothing
    lod
End Sub
Sub Viw(i As Long)
    ID = val_val(i, 0)
    suuzi = val_val(i, 2)
    moji = val_val(i, 3)
End Sub
Sub chkchk()
    If IsNumeric(suuzi) Then
        If suuzi > 9999 Then
            suuzi = 9999
        End If
    Else
        suuzi = 0
    End If
    If IsNumeric(moji) Then
        moji = "文字が不正>" & moji
    End If
    If IsNumeric(cmb) Then
        cmb = "文字が不正>" & cmb
    End If
End Sub

↑formソースコード

タグ

35, 358, access, db, https, sample, samplezip, SQL, Viewer, www, zip, いま, インジェクション, コード, こと, コメント, これ, サンプル, ソース, それ, ダウンロード, つもり, バグ, ファイル, マイクロソフト, ヨロシク, 下記, , , 修正, 削除, 動作, , 対策, 工事, 改良, , , 無駄, , 突貫, 若干, 軽量, 追加, 追記, ,