フォームで情報を受け取るCGIを作りました。
(情報はメールで送るタイプではありません)
ずっと順調に動いていたのですが、最近、
あるひとつのフォームに記入された情報が途中から文字化けすることが
たまに起こるようになりました。(いつもではありません)
「入力内容が長いためか」「半角英数」を使っているのか、などなど
確かめましたが、私が試した場合には問題がありません。

なお、入力された情報はjcode.plでEUCにデコードしています。

みなさんお忙しいなか恐縮ですが、よろしくお願いいたしますm(_ _)m

このQ&Aに関連する最新のQ&A

A 回答 (1件)

こんにちは。



ソースコードが判らないので、正確な答えにはなっていません。
ヒントにして頂けたら・・・と思います。

現時点で考えられる原因として、以下の事が考えられます。

1.HTMLにメタタグでエンコード指定がされていない為。

2.クライアント(入力者)のPCがマッキントッシュである。この場合、通常、Windowsから送られてくる文章の改行コードは、CR/LFであるのに対して、マッキントッシュは
CRのみとなります。

サーバーのPerlの中で、改行コードを統一してやらないと、文字化けを起こす事があります。
多分、これが原因だと思います。

ちなみに、サーバーがUNIX系(通常はこれ)であれば、改行コードはLFになります。

この改行コードを統一にするPerlの構文を下記に載せておきます。

$val =~ s/\r\n/\n/g;
$val =~ s/\r/\n/g;

ではでは
    • good
    • 0
この回答へのお礼

早早のご回答、ありがとうございました!・・・にもかかわらず、お礼が遅くなってしまい、申し訳ありませんでした。
testができないので(自分のPCがWin)解決できたかどうかはまだわかりませんが、お答えいただいた2番で対応してみました。

お忙しいなか、ほんとうに有難うございました m(_ _)m

お礼日時:2002/04/04 21:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報