|
|
|
|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
Googleツールバーをインストールして以来、私のインターネット生活は激変しました。何でも検索して、知識を吸収するようになりました。これは、インターネットで一番楽しいことです。
日々、プログラムなどを作成していたり、あるいは自分のパソコンをもっと便利にしようとしてGoogleを利用することが多いのですが、その検索生活の一部を日記にしてみようと思います。 Google検索日記 [全18件]
以前は、この楽天広場の日記でもハングルが入力ができたはずなのに、なぜかできなくなっています。 以前は、http://plaza.rakuten.co.jp/search/diary/200404110000/のような感じで入力できていました(ハングルWEB入力システムを使用して入力していました)。ところが、今韓国語を楽天広場に入力すると、「HTMLタグの記述に誤りがあります &#は利用できません」となります。 たとえば、「冬のソナタ」のハングル表記「キョウル ヨンガ」なら「겨울연가」※(Windows版Internet Explorer6の場合、韓国語をコピー&ペーストしてフォームからPOSTするだけで、この形式に自動変換してくれます。)のように表すことで、楽天広場のような文字コードEUC-JPのページでも韓国語を表示できる可能性があります。ところが「&#」が使えないというのですから、楽天広場でハングル表示をしようと思うならば、画像にするしかなさそうです。Javascriptやiframeタグが利用できれば方法はありますが、「&#」が使えないサイトで、これらのタグが使えるはずもなく・・・。 ※ 数値文字参照と言われる方法で、文字コードがShift_JISやEUC-JPのページでは、ネイティブには韓国語の表示をサポートしていないのですが、韓国語など多言語の表示が可能になるやり方。外国語表示という観点だけでなく、いわゆる機種依存文字に対しても有効です。たとえばShift_JISやEUC-JPのページにおいて、「高」の異字体の「 」(はしご高。画像になっています。楽天広場では機種依存文字もエラーで入力できないようです。ありがたすぎる機能ですが、ちょっと不便。)はWindowsでは正しく表示されますが、Macでは正しく表示されません。しかし、数値参照を用いて、「髙」とすることで、Shift_JISやEUC-JPのページでも、Windows・Mac両環境で正しく表示させることができます。詳細は、「数値文字参照による機種依存文字対応状況」もご参照ください。同じ、楽天広場の日記である「ハングル万歳」さんも、ハングル入力できないと困っておられるようです。楽天さん、セキュリティ上の理由か何かで制限されているのでしょうが、何か回避策はないものでしょうか? ※ この記事中に「&#」というのがいくつか出てきますので、何だ使えるじゃないかと思われるかもしれません。しかし、実際は、このページのHTMLソースを見ていただければ分かりますように、「&#」と入力することで、「&#」と表示させています。さらに言えば、「&amp;#」と入力することで、「&#」と表示させています。ああ、ややこしい。 このような「&」の表し方を、「文字実体参照」と呼びます。「数値文字参照」とよくセットで解説されています。 <<2004年12月31日23時6分追記>> 前は韓国語の入力も問題なかったのに何でだろうと思っていたら、 http://plaza.rakuten.co.jp/hlp/?doc=html_setsumei&stext=&char_dummy=%A1%FE%B3%DA%C5%B7%A1%FE#security にセキュリティ強化についてのお知らせが掲載されていました。12月4日にセキュリティ強化がなされていたのですね。最近、書き込みをしていなかったので気づきませんでした。 Last updated 2004/12/31 11:51:28 PM
Opera7.53をインストールしてみた。それには訳があります。 今まで自分のホームページのアクセスログを取っていたのですが、そのアクセスログ解析のPHPプログラム(自作)が思いっきりバグっていました。「Operaって、Vectorなどでダウンロードランキングによく登場する割にはぜんぜん使われていないな。これはサイト構築時に、Operaで動作不良でも無視してOKだな。」と内心思っていたのです。ところが、アクセスログ解析のプログラムのバグを修正してみると2%は行かないものの、1.5%はいそうだということが分かってきました。 慌てて最新版をダウンロードしてみました。今までは7.23は一応インストールしていたので、7.23とは別のフォルダーにインストールしてみました。 ところがトラブル発生。Operaで自分のサイトを表示させると強制終了する。ためしに、7.23でアクセスしてみてる。今度は、落ちない。7.53でだけ起こるのです。問題を切り詰めるために、HTMLソースを少しずつ削除して、「今度はどないじゃ」とやっていくと、原因が特定できました。 リスト表示のためのタグ、 <ol> <li>テスト1 <li>テスト2 </ol> の部分で落ちています。え、何で? 私のサイトでだけそうなるかGoogleでHTMLタグ講座のようなサイトを検索して、<ol>タグのサンプルページを見つけては、Opera7.53でアクセスしてみる。やっぱり落ちる。 さらに、 http://www.w3.org/TR/REC-html40/struct/lists.html のようなHTMLの教科書のようなサイトでも、落ちる。 ところが、<ol>タグを使っているのに、落ちないサイトがある。何で? 調べてみると、<ol>タグに、スタイルシートなどでフォントを指定してみると落ちないことが分かった。 <OL style="font-family: Impact;"> <Li>テスト1 <Li>テスト2 </OL> だと落ちない。 うん、ますます分からない。そこで、私のこの端末(WindowsXP SP2)でだけ起こる問題か調べるために、WindowsMeとWindows98の端末のそれぞれにOpera7.53をインストールしてみた。すると、ぜんぜん落ちない。 やっぱり、私のXP SP2端末だけがおかしいみたいだ。もしかして、WindowsXP SP2+Opera7.53でのみ起こる現象なのか、7.23も同じ端末にインストールされていることが原因なのかはわからない。 調べれば調べるほど不可解だが、ただ何となく、フォントがらみの問題のような気がします。 Last updated 2004/10/29 0:13:51 PM
昨日からWindowsからMacが見えなくなりました。MacはPantherを使用しているので、簡単に共有できていた。 ところが、昨日からmacに接続できない。sshでログインしようにも、マシーン名ではunknown hostでエラーになります。IPアドレスではアクセスを拒否されたと出ます。原因がさっぱり分からない。 こういうトラブルというのはたいてい、何か最近変更をしている場合。でも、何もしたきおくがない。まだXPのsp2にもアップしていないし・・・。 最近行ったのは、NTTのフレッツADSLモアスペシャル(47MB)にして、モデムが変更になったこと。でも、それは1週間ぐらい前だし。本当に最近したのは、3日にモデムのファームウェアを当て、上り3Mから5Mに対応させたこと。 http://www.ntt-west.co.jp/kiki/download/flets/modemms5/index.html ファームウェアを当てる前は、上り1.6Mbpsぐらいでしたが、ファームウェアを当てたら確かに1.8Mbpsぐらいにあがりました。 でも、モデムやファームウェアの影響なんていうことあるだろうか? 外にある特定のサイトが見えなくなったというのならいざしらず、LANの内側のマシーンが見えないのは解せない。 しかも、なぜかMacからWindowsの逆方向は依然として見える。もちろん、Macからもインターネットはできる。さらに、Windowsから 「http://macのIPアドレス」とすると、Macの中にあるapacheのデフォルトページにちゃんとつながる。やはり、特定のプロトコールもしくはportのみ拒否されているようだ。 ということは、どう考えてもMac側の問題だろう。XPのマシーンからのみならず、MEや98においても一切ネットワークに、そのMacは表示されないからだ。Macの「システム環境設定」をああでもこうでもないと、Googleで調べならがいじくりまくるが、一向にだめ。丸一日かかって、ぜんぜん分からない。お手上げである。 さらに調べてみると、バックアップ用に作成した別ボリュームを起動ディスクに設定してMacを再起動したところ、ちゃんとWindowsから共有できます。やっぱり、Mac側の設定が何かの拍子で変わってしまったのだ。 その別ボリュームに作成したバックアップから復元してもいいのですが、そのバックアップを作成したのが10ヶ月ぐらい前の話であり、とても元に戻す気になれません。困った。二つのボリューム(本体とバックアップ)の設定を比較しようにも、原因が分からない。 完全にはまってしまった。とりあえずの問題として一番困ったのが、Macに作成していたPostgresのデータにWindowsから接続できなくなったこと。仕方が無いので、WindowsのMySQLにデータを移し変えることに。 Postgres→MySQLのコンバータも探せばありそうですが、面倒なので、秀丸で置換。窮しているときは、さらにどつぼにはまりやすいもので、「'」のエスケープ処理の順番を間違えてしまったため、非常に時間がかかりました。 データのコンバートの後、さらにPHPプログラムをPostgreSQL用からMySQL用に変更。こちらは比較的短時間にすんだ。接続部分などは当然、関数化していたからだ。 思わぬ成果としては、WindowsXP→MySQLの方がWindowsXP→MAC→PostgreSQLより断然早いこと。当たり前か。Macを経由している分遅くなりますし、Macは2年前に買ったCPU600MHz+メモリー256MBだもんな。 それにしても、完全にはまってしまっている。昨日は落雷もあって、停電になり、別のマシーンの電源が急に落ちてMySQLのデータが壊れたり、散々だった。データが壊れた分はBackupから5分ぐらいで復旧できたけれど、災難続きである。 Last updated 2004/09/05 10:46:49 PM
AmazonのWEB Serviceを使って、ソフトウェアの販売ページをPHPとPostgresで作成しています。そこで、思わぬエラーが発生していることに今日になって気が付いた。 C++に関する製品を扱ったジャンルで Warning: eregi(): REG_BADRPT:・epetition-operator operand invalid in (PHPのパス) line 100 のようなエラーになっているではないですか? エラーが発生している箇所はすぐに特定できました。先日、ジャンルを表示するアルゴリズムを修正したことが原因のようでした。eregi関数という正規表現を扱う関数を用いていたのですが、これが原因だと分かりました。 PHPの該当部分の問題点をハイライトするために、簡単な例題を書いてみますと、
のようなプログラムがあった場合、このプログラムを実行した場合、どのような結果が表示されるでしょうか? もちろん、 「プログラミング」は「プログラミング→C・C++・C#」に含まれます。 というのも表示されますが、そのほかに上述のwarningが表示されます。 これは、プログラムの10行目: if(eregi($text_b,$text_a,$regs)){ に変数を代入してみると、原因がよく分かります。 if(eregi("プログラミング→C・C++・C#","プログラミング",$regs)){ となります。ところが、 eregi関数のマニュアル: http://jp.php.net/manual/ja/function.eregi.php にありますように、第一引数は「string pattern」(文字列の正規表現)であって、「string」(文字列)ではありません。ですから、第一引数に「+」があれば、それはメタ文字と解釈されてしまいます。 ですから、それ自体を検索させるためには、エスケープする必要があります。 if(eregi("プログラミング→C・C\+\+・C#","プログラミング",$regs)){ のようにすればOKです。ところが、先ほどの例題では、「+」は変数$text_bの中に含まれていて、変数の中身は事前には分からないので、エスケープしようがありません。そこで、苦肉の策ですが(もっと良い方法もあると思いますが)、 事前に、$text_b = eregi_replace("\+","あいうえおかきくけこ","$text_b");として、「+」を絶対に出現しない「あいうえおかきくけこ」という文字列に変換した上で、それを後で再変換する方法を取りました。
としました。 これで、Warningは表示されず、 「プログラミング」は「プログラミング→C・C++・C#」に含まれます。 だけがブラウザに表示されるようになりました。 決して、スマートな解決策でなく、以前会社勤めをしていて、これとよく似た処理を提案して、即刻、先輩社員に却下されたのを思い出しましたが、今回は、eregi関数の第一引数にくるものが何百とあるといっても、最初から候補(Amazonのジャンル名)は決まっていて、問題を起こすのが、「C++」の「+」だけであることが分かりましたし、フリーのプログラマーとして気楽にやっているため、これで良しとしました。 Last updated 2004/08/08 10:18:19 AM
Mozillaだから、どうせネットスケープと同じだから、インストールしなくてもいいと思ったのですが、今日何気にアクセスログのブラウザ別シェアをチェックしていると、このFirefox(旧名称はfirebird)という名称のMozillaのシェアが拡大しているのがわかりました。 だいたい、1000人に二人ぐらいです。Mac版のネスケ4.7よりもはるかに多いです。また、Windows版ネスケ4.7よりは若干少ないですが、それに近づく勢いがあります。そこで、サイトの確認用に早速インストールしてみました。 Javascriptで document.write(navigator.userAgent); してみると、 Mozilla/5.0 (Windows; U; Windows NT 5.1; ja-JP; rv:1.6) Gecko/20040206 Firefox/0.8 になりました。 そして、今開発中のサイトをチェック。ところが、rolloverのところが、なぜか動きません。rolloverというのは画像の上にマウスを置くと、画像が切り替わったりするプログラムです。 rolloverでは、基本的にはブラウザのタイプを調べて、それぞれに応じたプログラムを書きます。調べていくと、どうも、 if(window.sidebar){ //**処理 } の部分でエラーになっているようです。・ アドレスのところに、「Javascript:」と入力してコンソールを立ち上げると、 エラー: uncaught exception: [Exception... "Component returned failure code: 0x80004003 (NS_ERROR_INVALID_POINTER) [nsIRDFService.GetDataSource]" nsresult: "0x80004003 (NS_ERROR_INVALID_POINTER)" location: "JS frame :: file:///D:/program/mozilla/components/nsSidebar.js :: nsSidebar :: line 67" data: no] というエラーが出ているのが分かりました。 早速、Googleでエラーメッセージから検索。全く同じエラーを http://ryuzi.dyndns.org/mozillazine/html/modules/newbb/viewtopic.php?topic_id=855&forum=4&jump=1で発見。しかし、解決には至らず。 その他、英語ですが、 http://forums.mozillazine.org/viewtopic.php?t=40798&highlight=nssidebarというのも発見しましたが、ここでも解決にいたらず。 仕方がないので、とりあえずの改善策を実行しました。 if(window.sidebar){ } が出てくると、エラーになりますので、
最初に、UA(ユーザーエージェント)の文字列の中にFirefoxという文字列を含むかどうかという条件で「真」になりますので、「if(window.sidebar)」という部分は評価されません。したがって、エラーになりません。 なんかすっきりしませんが、おいおい原因を調べていきたいと思いました。 Last updated 2004/05/22 7:26:55 AM
今とっても悔しい。そして、非常にむかむかしています。 ある検定の申し込みを某書店でしたのが、ゴールデンウィーク最後の日の5日でした。受験料を書店で払い込み、支払いの控えと願書を入れて、検定の協会に郵送することになっていました。某書店でお金を払うが、願書の送付自体は別に郵送で行わないといけない。これは理解していた。 ところが、試験が6月だったので、まさか7日が締切日とは知らなかった。本当は7日の午前中に郵便を出しにいくつもりだったが、7日の午前中に、仕事が思いの他てこずって、いけなかった。そして、夜9時ごろに、願書を書き出して、翌日の8日出そうと思った。ふと、書店でもらった願書をよく見てみると、わかりにくい説明だが、「7日消印有効」ってある。げっげ。もう、今からでは到底間に合わない。 翌日、つまり今日だが、郵便局に朝一番で言って、事情を説明して、消印を昨日のものに変えてもらうように頼んでみることにした。でも、これは「違法行為になるからできない」と郵便局に丁重に断られた。郵便局は悪くない。当然の回答だ。 そこで、速達で出すことにした。速達で出せば、明日は日曜日だが、明日には着くという。昨日、普通郵便で出していても、月曜日に着いていたのかもしれないのだから、消印は一日遅れだが、受理されるだろうと思った。そもそも消印など見ているのだろうかというのも根本的な疑問としてあった。 また、速達で出すことで、「誠意」を見せたつもりであった。 昨日郵便ポストに投函しても昨日の消印がつくとは限らない。消印が消えてしまったり、よく見えない状況で届くことも、しばしばじゃないか。大丈夫、大丈夫とも思った。 ところが、受験願書の説明の仕方が分かりにくかったり、非常に高圧的な文面があったので(「受験票をこちらに送るための80円切手を忘れるな」、という趣旨の文面。でも、送付用の封筒には、願書と支払い証明の控えの2点を入れるように大きな字で書かれていて、切手のことは書かれていない。<<そもそも、受験料を払っているのに、また追加で切っても入れないといけないというのは変に思います。最初から受験料に含めておくべきでは?>> その他、締め切りまでに願書が届かなかった場合は、返金もしないし、次回の受験に使えるような手配は一切しない、という文面もありました。)、心配になってきました。ここの協会なら、杓子定規で、「消印有効」というのを解釈して、速達で日曜日に届いたものはoutで、普通郵便でも消印が7日なら、来週月曜日や火曜日に届いた願書は受け付けるということをやってのけるかもしれないと、嫌な予感が走りました。 心配になったので、協会に電話してみました。すると、やはり、いつ届いたかどうかが問題ではなく、消印を見て、消印を過ぎているものは一切受け付けないという。しかも、その答え方が腹の立つ答え方で・・・。うう、悔しい。 きっと、私のように泣いている人も他にいるんだろうな。それでも、少しだけわずかな希望を持っている。電話に出た人はあんな回答だったけど、本当は、ちゃんと受理されることもあるかもしれない。また、消印を見落としたり、見間違うかもしれない。雨でも降って、にじんでくれないかな。 来月に受験票が届かないかと期待しているが、1ヶ月間も受理されたかどうか分からないというのも不安な話。7日にPOSTに投函して、OKになったと安心している人も、実は消印は8日になっていて、受理されなかったら、相当ショックだろうな。私は今の時点で、受理されないかもと分かっているけれど、まだ知らないでいる人たちもいる。 これがただの検定だから、まだ良いけれど、大学受験などの願書で、「消印有効」でトラぶったケースってないんだろうか? ちょっと、Googleで検索してみたが、まだ見つけられていない。ああ、悔しい。 そもそも、書店受付で申込書も書いているのだから、後は申込書を書店が検定協会にFAXしておくとかできないのだろうか? 何で申込者が、わざわざ郵送しなければならないのか。受験料払い込みの時に記入した住所や名前をまた願書でも書いて・・・。絶対に納得がいかないが、聞いてもらえそうにない。 それにしても、今年になって買い物したもので、無駄金になったり、メーカーに無料交換してもらったりするトラブルが, 私の周りで続出。どうなっているのだろうか? 神様、Help me! Last updated 2004/05/08 1:03:17 PM
A社のプリンタを4年ほど使っています。最近、黒のインクがなくなったので、数ヶ月前に大手量販店B社で購入したインクリボン2個セットの一つを取り出して交換しようとしました。 プリンタのインクリボンがなくなると、プリンタのインジケータで赤いランプになります。入れ替えると、プリンタのヘッダー部分がギー・ガシャガシャと動いて、セットされ、赤いランプが消えるはずです。 ところが、今回、替えのインクリボンをセットしたら、全然ヘッダーが動きません。当然ランプは赤のままです。そこで、あれ失敗したのかなと、2個セットのうちの2個目を装着。また、動かない。 なぜかB社で購入時から、箱にセロハンテープで明け口の上下が補修されているのが気になった私は、不良品ではと思い、別の量販店C社で購入したインクリボンで再々チャレンジ。今度は、難なくうまくいきました。 そこで、翌朝、プリンターメーカーA社のインクリボンを販売している会社に電話しました。これがフリーダイヤルじゃないんですよ。 電話して、まず受付の女性に事情を説明。3個目で成功しているなら、次回交換時にまたうまくいかなかったら連絡して欲しいなどという、訳の分からない説明。次回交換時って行っても、数ヵ月後でしょう。そんなに待てますかということです。不良品じゃないのかなと詰め寄ると、しばらくお待ちくださいと保留になるが、途中で電話が切れました。むっかー。 また、同じところに電話。すると1回だけの失敗の場合、インクリボンの不良も考えられるが、2回目もとなると、まず、それは考えられない。プリンタのインクリボンを認識する部分が故障している可能性があるという。修理に出して欲しいという。どっひゃー。 それでも、インクリボンが不良品じゃないのかという思いを捨て切れなかったが、とりあえず修理センターの電話番号を聞く。 それが、またフリーダイヤルでない上に、家からかなり遠いところ。電話代も馬鹿にならないよ。修理センターに電話して、また同じことを説明したら、やっぱり「一度はあっても2度は普通ない」という。詳細は忘れたが、少し粘っていると、どうさせてもらったらいいか確認するのでこちらの電話番号を教えて欲しいという。 待つこと1時間ぐらいだったか、連絡があった。技術に確認したら、「2回連続で失敗した場合でも、プリンタがおかしいのではないかと修理に出してもらって、修理センターでテストしてみると、全然どこもおかしくないことが多い」らしと回答してきた。要は、2個とも不良品だった可能性があるというのだ。 で、結局2個とも、代替品を送ってもらうことにした。あやゆく、修理に出させられるところだったよ。もちろん、4年も使っているから有償なのに。危ない、危ない。でも、2個代替品を貰っても、電話代が結構かかっているはず。 なんか、悔しいというか、納得がいかない結末でした。 Last updated 2004/04/28 8:21:49 PM |一覧| |