PHPのMysqlで五十音検索、五十音順のバグを解決。全角のひらがな、カタカナではなく、半角カナをDBに格納するのが正解だった

2023-05-13

PHPで社内システムを構築する案件をいただいている中で、ある日「五十音順がうまく機能していない」というエラーの報告が。しかし、コードには全然誤りがなく、google先生に粘り強く聞いてみたところ、半角カナでREGEXPやった方がよいという、かなりレアな情報に辿り着きました。無事に解決 mysqlテーブルのフィールドの一つに、並び替え用に半角カナで値を保存するようにしてあることが前提です。フリガナはひらがなで保存しておくのが好きだったのですが、半角カナが意外と優秀だったようです。 <五十音別の表示に成功したコード> phpStart function makeGojuonQery...

PHP

国税局職員の2億円詐欺事件を受けて暗号資産の必要性を改めて考察【仮想通貨破綻論】

2022-06-03


持続化給付金2億円詐取か 東京国税局職員ら7人逮捕 主犯格はドバイに逃亡というニュースがありました。 手口は、「暗号資産に投資すれば個人事業主になれるから給付金の申請資格が得られる。」と言って100万円の投資資金を次々と騙しとって被害者約200名、2億の被害総額。主犯格はドバイへの海外逃亡に成功していて、なかなか捕まらないと思います。 3年ほど前にも岡山の果樹園を営む西山ファームという会社が被害総額133億円の巨額詐欺事件を起こしましたが、主犯格は海外逃亡。未だに捕まってません。 詐欺で得た利益を暗号資産に投資してしまえば、逮捕されても利益が残せると思っているのか? ...

トランプによるSNS誕生!反撃の準備整いました。Truth Social 真実と銘打ったアプリが首位に!

2022-04-29


2021年にTwitterとFacebookから追い出されたドナルド・トランプ前米大統領が、自身で作らせたTruth social真実と銘打ったSNSが誕生しました。 リリースから2カ月が過ぎたのですが、アプリ自体は安定しておらず、まだ完全体ではないようです。いきなり人気が出てしまうと、サーバーの拡充不足とかの問題が出るし、システムというのは、リリースしてからエラーがいくつも出るものです。それを解消し続けて、エラー報告がなくなってきたら完成となります。 最近はテスラのイーロンマスクが約5兆6000億円ツイッターを買収したことで話題に上がりましたが、意外にも、トランプのトゥル...

【初心者向け入門講座】プラグラミングで挫折した人必見!手っ取り早く理解しやすい勉強法(javascript・HTML)

2020-12-31


分岐やループの基本構文は誰でも見てすぐに覚えられます。 ただ、構文を覚えたところで何も始まりません。 ということで、早速モノを作っていきます。それが一番理解しやすいのです。最初に勉強するのにオススメなのは「お問い合わせフォーム(会員登録フォームなど)」誰もが利用したことのある機能なので完成イメージがしやすいでしょう。 このイメージがモノを作る上で需要なのです。完成イメージがないのに、どうやってモノを作るの?ってことなのです。イメージがなかったら何を作ればよいのか分からないので何も始まりません。 ということで、今回は簡易的な「お問い合わせフォーム」の完成図をあなたの頭...

デスクPCの電源がついたり消えたりを繰り返すエラーを解決!原因の本命は電源ユニット

2020-10-26


とある日、突然パソコンが立ち上がらなくなりました。 パソコンの電源を入れると、付いたり消えたりの連続…。 やばい!ハードディスクがイカれたか!?と思って焦りました。 デスクトップパソコンの箱を空けてみると、 5、6年分のホコリが溜まってひどい状態。 ひと目見て、「ああ、ファンが回らなくなって、パソコンが付いたり消えたりしたんだな」と思い、 爪楊枝一本で掃除してやりました。 すると、パソコンは無事に立ち上がり、ホッと一安心。 いやいや私のパソコンはこんなホコリだらけじゃありませんよという方は記事の最後まで必ず、 原因の本命は電源ユニットで...

【悲報】IPv6の夜明けは一生来ない!?IPv6対応のサイトが少なすぎる!そしてGmailにエラー発生

2020-05-14


プロバイダである楽天ひかりからメールが届いた。 IPv6高速インターネット接続先行リリース! 最近、自粛自粛で自宅率が高いこともあり、マンションのネットが遅い。 そこにIPv6に関するメールが届いて、早速設定してみることに。 結論。 古めのメールソフトでGmailを設定している人はIPv4のままで。 IPv4+IPv6の両対応に設定しないといけません。 wifiルーターの設定をIPv6にして、ネットを繋いでみると、一部のサイトしか開かなくなりました。 なんと、サイト側がIPv6に対応していないといけないようです。youtubeやNetflixなどの動画サイト...

ドメイン移管をして3週間後にサイトが突然表示されなくなった!?ドメインの「clientHold」解除までの記録

2020-02-29


突然クライアントから「サイトが見れなくなりました」と連絡が入り、すぐにサイトを確認。 システムエラーが原因ではなさそう。FTPにも繋がるしサーバーのダウンでもなさそう。 とりあえず、さくらインターネットへチャットでの問い合わせ。 担当者からの回答は「ドメインのステータスがclientHoldになっていますね」とのことで、はい?? クライアントホールドというワードは初耳でした。 調べてみると、単純にドメインがロック(凍結状態)されているとのことで、ドメインが原因だということが確定。 あっ!しまった! そういえば、ドメイン移管後にwhois情報を更新していない…。 ...

2019年 PHPのSMTP送信はインストール不要のPHPMailerが手軽で最短!PEAR終了

2019-07-07

▽現役のメーラー「PHPMailer」ライブラリ ▽PHPMailerでSMTP送信ができたコードの紹介 ▽PHPMailerでSMTP送信の手順1「ダウンロード」 ▽PHPMailerでSMTP送信の手順2「ライブラリ読み込み」 ▽PHPMailerでSMTP送信の手順3「SMTPの設定」 ▽PHPMailerでSMTP送信の手順4「SMTP送信の実行」 ▽PHPMailerでSMTP送信の動作確認済みコード <現役のメーラー「PHPMailer」ライブラリ> 以前、迷惑メールになりにくいということでPEARのSMTP送信の記事を書きましたが、 PEARはPHP7になっ...

問い合わせフォームからのスパムをGoogle reCAPTCHAを導入で一網打尽!スパム来なくなりました!

2019-07-06


▽お問い合わせフォームのBot攻撃が年々増加している ▽reCAPTCHA(リキャプチャ)v3の設置方法 ▽[v3]設置手順1「まずはフォームのHTMLにreCAPTCHA設置コードを追加」 ▽[v3]設置手順2「次にフォームタグ内にhiddenのinputタグを追加」 ▽[v3]設置手順3「PHP側の先頭にコードを追加」 ▽[v2]設置手順1「まずはフォームのHTMLにreCAPTCHAのAPIを読み込む」 ▽[v2]設置手順2「フォームのボタンの辺りに認証チェックフォームを設置」 ▽[v2]設置手順3「PHP側の先頭にコードを追加」 ▽reCAPTCHA(リキャプチャ)設置...

中小企業がポンコツシステム会社の餌食になってる件について

2015-10-22

PHPのシステムエラー復旧を承っちゃおうかな。ポンコツなシステム会社が多すぎるからさ。と思う今日このごろ。 34歳になってこの上から目線の発言は以下に自分がクソメンであるかを象徴してるねw 大手のポータルサイトではユーザー登録の際にエラーは全然起きないけど、 中小企業が運営するポータルサイトってエラーにちょくちょく出くわさない? 最近では、「セミナーズ」というサイトにセミナーの登録をしようとおもったら、 登録ボタンを押すと、ページが見つかりません…っておいおい。 せっかく苦労して入力したのにふざけんなっつーのと、怒り心頭。 「スクール検索サイト」でスクール情報を登録し...

SSIで上位ディレクトリを呼び出す場合にはちょっと注意

2012-12-26

さくらインターネットの共有サーバーではhtaccessのルールが特殊で、結構悩まされる。安いサーバーに難があるのは仕方がないけど…。 既に拡張子が「html」で作成されたサイトで、後からSSIやPHPを使いたいという状況。これWEBの仕事してるとそこそこ出てくるよね? URLを変えるのはSEO的にイヤだということで、拡張子はhtmlのままSSIやPHPを使用したいという時は、htaccessにちょいと書いてやるだけで実現します。 htmlStart ▼phpの場合 AddType application/x-httpd-php .htm .html ▼SSIの場合 Add...

「余計な進化に振り回されない」という個人的方針

2012-12-20

▽ゲーム機の3DSはドンズべりだった? ▽エクセル2010なんかは特にひどい使いにくさ ▽Adobe製品はバージョンアップと共に激重化 ▽余計な機能が増えすぎたせいでユーザーを混乱させているような感がある 年々進化続けるパソコンなどのメカニックな技術。 しかし、それ必要か?それ面白いか?と思ってしまうどうでもいい進化が多すぎではないだろうか? ゲーム機の3DSはドンズべりだった? 3Dモードを切ってプレイする人がやたら多いとか…。 アバター以来3D画面の話題はさっぱり。全然需要がない技術のようである。 ゲームはスーファミやゲームボーイのように2Dの時が一番面白かったよ...

関数の引数(ひきすう)・戻り値(もどりち)について

2012-11-19

引数とは…戻り値とは…と言葉で書いてもパッとしなさそうなので、半角のカタカナを全角のカタカナに変換するmb_convert_kana関数を例として見てみよう。 phpStart $zenkaku = mb_convert_kana($hankaku, "KV"); //$hankaku が第一引数 //KV が第二引数 //$zenkaku が戻り値 phpEnd これで用語の意味は分かるかと思います。自分で関数を作る(ユーザー定義関数)時はこの引数と戻り値のことを理解しておかないと便利なものは作れない。 個人的にフレームワークの使い方を覚えるのが面倒なので、自作関数の...

submitボタンの連続押し・同時押し防止

2012-10-07

ボタンの連続押しにより、エラーが発生することがあるので、管理画面や問い合わせフォームでは常時使っておいた方がよさそうな必須コードです。submitしたらページ内全てのsubmitをグレイアウトにして無効状態にします。 htmlStart $(function(){ $('form').submit(function(){ $('form').find(':submit').attr('disabled','disabled'); }); }); htmlEnd 使用する場合はjQueryの読み込みを忘れずに!...

文字列の出力

2012-08-20

「echo」(エコー)はブラウザにHTMLを出力します。文字列を出力する際に「”」「’」ダブルクォーテーションかシングルクォーテーションで文字列を囲まないといけません。そのルールを説明したいと思います。 <単純な文字列の出力> phpStart echo 123456; echo '123456'; echo "123456"; echo hello!; //←エラーがでます echo 'hello!'; echo "hello!"; echo あいうえお; //←エラーがでます echo 'あいうえお'; echo "あいうえお"; phpEnd 文字列はクォー...

サイト内のキーワード検索で複合(AND)検索を導入する為のコード

2012-08-04

複合検索は半角スペース区切りのワードに変換して、explode関数で半角スペース区切りで配列に格納し、foreach文でWHEREのSQL文を生成します。foreach文でエラーを出さない為に、ループの前にis_array関数で配列であるかの確認しておきましょう。 htmlStart $q = str_replace(' ',' ',trim($_GET['q'])); //*1 下記説明 $array = explode(' ',$q); if(is_array($array)){ foreach($array as $val){ $str = ($sql)?' AND...

この記事がお役に立てましたら是非シェアのご協力お願いします。