サブタイトル:HPのメンテ改善策⑨
ホームページのメンテナンス簡易化等の合理化策のために、花写真鑑周辺の全面書き換えを実施中であり、ようやくその基本部分の約半数のプログラムの書き換えと、必要画像の移転を実施したが、ここに来て面倒な事象がその一部に発生した。
花写真鑑には、1919種類の花を収録しているが、内1200種について、100種毎に、IE-11にて書き換えなどが終了し、内部テストランでOKだったので、サーバーに12回目として送り込んだ。そして、Chrome、Firefox、Edgeでのテストを行ったところ異常はなかった。(下記画像は異常なしのもの)
ところが、10月4日、友からメールが来て、No1193において、文字化けが発生しているとの連絡を受けた。 それで再度やってみたところ、IEとFirefox、では正常なのに、ChromeとEdgeは、文字化けが発生していることが確認できた。(下のNo1193のみ文字化け発生)
改めて、1200種全体をChromeで見たが、文字化けはこのNo1193のみであった。この結果から、No1193固有の問題と解し、細部に渡り調べたが、原因を見つけることはできなかった。最後の手段として、該当プログラムを全文を新規に書いてみたが、結果は同じであった。
友からのアドバイスで、前に発生した、コンマの問題のように微細な部分も調べたが、原因を特定するには至らなかった。今回の現象は文字化けであるから、原因は簡単そう見えるが、それだけにやってみることが少なく、結局打つ手がないのである。
まだ、諦めた訳ではないが、ここで今改造作業の方針変更をするほどでもないので、最悪はNo1193のみ欠番とすることも視野に、もう少し改造作業を進めることにした。そして、10月8日の友から次のようなメールが来た。(メールより抜粋、原文のまま)
No1193の処置をいろいろやって居られると思いますが、部外者のつまらない思い付きですが
この様な事は意味ありませんか。
1)「オオオナモミ」の文字列に異常反応したと仮定して「オナモミ」などと文字列を変えて見る。
2)ソースの81行に正しく処理されているNo1194等の別の名称を入れてみる。
(No1194を重複させるとか。)
3)81行が壊れていると仮定して、80行81行を空行として82行から書き込んでみる。
素人の思い付きです。
そこで、上記に従い、その全てをやってみるべく、準備をした。 IE、Chrome、Firefox、Edgeにつき、それぞれを内部でテストしただけでは、問題点がすべて出る訳ではないことが判明したので、一時的にしろ、サーバーに送らないと本当のことがわからないので、そこまで準備した。
そして、上記 1)を、<iframe>の、中で、正常なNo1192と、中身をそっくり、入れ替えてみたが、結果は変わらず、文字化けが引き継がれたのであった。 そして、次にその frame に入るプログラムを見て、どこを入れ替えるか検討していた。
文字化けの発生する、プログラムをよく見ると、「オオオナモミ」という基準名の次に、その漢字を見た時にひらめいた。 花名は漢字ではかなり難しい文字(当て字が多い)で書かれていることが多いがここには「大葈耳、大巻耳」と書かれていたが、”葈”の字が怪しいと感じたのだ!。
花の名前を漢字で書くときに、その文字がシステムの中に無い文字であると、?が出たり、変換しなかったりするが、これが原因かもしれないと、直観的に思ったので、そのプログラムから「大葈耳」だけを、削除してみたところ、文字化けが修正されたのであった。
Chrome は、変更しても、すぐには画面上に反映されないから、翌日確認したものであるが、この時は、Edge は変更直後に反映されたので、文字化けが治ったことを実感したのであるが、正式には、翌日 Chrome にて再確認して、結論としたのであった。
かくして、原因は判明したが、どうも使うプラウザにより、またバージョンによっても異なるようなので、対策は立てられず、強いて言うなら、花名に漢字を使わないことかもしれないが、今はそれもやる気になれず、「大葈耳」を削除の該当物件の処置だけになりそうな気配!。
やれやれの、一件落着となった!!!。
以上