CGI-BBS > 情報収集 > フォームメール > form2mailを中国語版HPに設置したいのですが・・・


カレッヂ
カレッヂ


質問者 ひろ  投稿日 3/22(木) 13:27:12
色々試してみましたが、どうしても文字化けしたりエラーになったりします。
誰か、修正の方法を教えてください。有料でも構いません。
nakatsu@admillion.com
回答者 羊相談員  [削除]  投稿日 3/23(金) 11:42:40
中国語と日本語では同じ漢字でも文字コードが全然違います。
そのため日本語処理を行うjcode.plを使用しても正常に処理することができません。
質問者 ひろ  [削除]  投稿日 3/23(金) 16:23:17
レスをありがとうございます。
そのことには気が付いています。試しに簡単な英語版のmailformを付けてみたら、文字化け無しに上手く送信ができました。ただし、添付ファイルの機能がなく、それでは役に立ちません。
「mail2form」の英語版があれば、解決しそうなのですが・・・、英語版は無いのでしょうか。
回答者 羊相談員  [削除]  投稿日 3/24(土) 11:09:06
単純に全角文字を使わなければ英語版になります。
jcode.pl関連の処理が無駄になりますが。
回答者 まさ  [削除]  投稿日 3/24(土) 19:34:25
Unicodeを使えば上手く行きます。
デコード等はモジュールを使うといいです。

ちょっとモジュールの名前は忘れましたが、例えば日本語でUnicodeを扱えるのはJcode.pmが
あります。CPANに行ってモジュールの検索をかければ見つかるはずです。

回答者 羊相談員  [削除]  投稿日 3/24(土) 19:59:03
横槍ですみませんが
まささんの言われている「CPAN」とは一体何なのでしょうか?
一応調べてみたのですが日本語で解説されているところがなかったので
全然意味がわかりませんでした。
回答者 まさ  [削除]  投稿日 3/24(土) 21:06:41
>横槍ですみませんが
>まささんの言われている「CPAN」とは一体何なのでしょうか?
>一応調べてみたのですが日本語で解説されているところがなかったので
>全然意味がわかりませんでした。

いえいえ横槍はこちらですから気にしないで下さい。

CPANと言うのは略称で正式にはComprehensive Perl Archive Networkと言います。
ここには全世界で開発されたモジュールが揃っています。いわばモジュールの宝庫です。
ここでモジュールが一括管理されているので、われわれ利用者は無駄な労力を費やさなくて
的確なモジュールを見つけることができます。ここでは自分で作ったモジュールを登録する
こともできます。モジュールを使ったスクリプトを書かないのならCPANは必要ないですが、
世の中のプログラムはオブジェクト指向に移行しつつあります。例えはC++などはもともと
オブジェクト指向の言語ですね。Perlはもとはオブジェクト指向の言語ではないですが、
Perl5になってからは、徐々にその傾向が強くなってきています。恐らくいずれはPerlも
完全にオブジェクト指向のスクリプトになるでしょう。

まあオブジェクト指向の話は置いておいて、CPANにはこのように様々なモジュールがありま
す。ここのことを日本語で解説しているページはあまり見たことないですが、個々のモジュ
ールについては日本語で解説しているページはよく見かけます。いづれはモジュールを使った
スクリプトは一般化すると思いますので、CPANの存在は知っておいて損はないでしょう。

一言で言えば、CPANとはモジュールをデータベース化して置いてある場所と言うことになり
ます。

ここからは余談ですが、なぜモジュールを使った方が良いかといえば、モジュールは先人が
開発したパッケージです。公に公開されているわけですからバグも少ないです。モジュール
を使うことによりスクリプトは恐ろしく単純になります。例えばPerl5標準についている
CGI.pmを使うとフォームからのデコード処理はほんの数行で済んでしまいます。Net::SMTP
などを使うとSendmailを使わなくても数十行でメールを送ることもできます。このような利
点からわたしは初心者であればあるほどモジュールを使うべきだと思います。モジュールを
使うことによりバグの少ない、効率の良いプログラミングが可能です。

わたしの会社では初心者にはまずモジュールを教えます。古いスクリプトの書き方はその後で
す。どうしてもメンテナンスで古いスクリプトを手直ししなければいけない時にそういった知
識も必要ですから一応教えます。しかしそれはあくまでメンテナンス等で使う場合であって自
分で新たにスクリプトを書く時にはモジュールを使うように教育しています。最初にjcode.pl
やcgi-lib.plなどは教えません。そもそも*.plはPerl4以前の古いモジュールです。そのよ
うなものは覚える必要はないと思っています。まあ、わたしの会社は主に自社サーバーの構築
などが多いのでモジュールを入れ放題なのでそんなことが言えますが、プロバイダーのサーバー
を使ってる人はまだまだ、*.plは必要なのでしょう。プロバイダーのサーバーの方が自由度が
少ない分不利ですね。


回答者 まさ  [削除]  投稿日 3/27(火) 10:59:45
それはわたしもよくわかりませんね。
非営利団体なんじゃないでしょうか? もちろんサイト名でもありますし。

回答者 羊相談員  [削除]  投稿日 3/27(火) 11:08:04
すみません。
馬駒さんと同じパソコンを使っているもので
cookieが効いて名前が「馬駒」になってしまいました。
もちろん登録してあるメールアドレス、パスコードは違います。
回答者 羊相談員  [削除]  投稿日 3/27(火) 13:59:46
回答ありがとうございます。
http://cpan.org/がCPANのホームページで、ここから各種モジュールをダウンロードできるという解釈で合っていますでしょうか。


追伸

いくら名前を間違えたからといっても
発言を削除するべきではなかったですね。
すみません。
回答者 まさ  [削除]  投稿日 3/27(火) 15:54:26
CPANのページっていろいろあって本当はよくわたしもわかりませんが、しかし大体CPANを
利用する場合は何のモジュールが欲しいのか決まっている場合が多いのでわたしは検索の
ページをよく利用します。

http://search.cpan.org/

たぶんおっしゃっているページがこの検索のトップページかもしれません。
そこからどんどん中に入っていって欲しいモジュールを見つけることも勿論できると思います。
この辺は人それぞれですので、どちらがいいとは言えませんが。

おっしゃっているページがCPANのトップページだと思いますよ。

>ここから各種モジュールをダウンロードできるという解釈で合っていますでしょうか。

はい、そう言う解釈でいいと思います。

回答者 羊相談員  [削除]  投稿日 3/28(水) 16:51:07
回答ありがとうございます。

この場合、ひろさんの質問を解決するにはどのような条件や手順が必要なのでしょうか?
回答者 まさ  [削除]  投稿日 3/28(水) 21:06:45
Unicodeを扱えるモジュールを使えば、どんな言語でも変換できると思いますが、そのモ
ジュールの名前は忘れました。 CPANでUnicodeで検索すれば分かるかもしれません。

返信(回答)する


Web裏技