• ベストアンサー

EUCコードのページからの送信での文字化け対策法

EUCのhtmlページからフォーム内容をPOSTで送っているのですが、 そのデータファイルをhtmlに出力するほうのcgiはs-jisで作っています。 この場合、データ送信時にEUCをs-jisに変換して送信することって出来ますか? 出来ない場合はやっぱりcgiのほうでデータを s-jisに変換するしかありませんか?

  • CGI
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

HTMLかCGIのどちらかの文字コードを変換することで回避できます。 HTMLをShift-JISにするか、CGIをEUCにするか。 フリーのエディタなどで保存時に変換できますので、使ってみてはどうでしょうか。 参考URLのページでも探せます。

参考URL:
http://www.vector.co.jp/vpack/filearea/win/writing/edit/index.html
namiri_e
質問者

お礼

出来ればEUCに統一したいので、cgiをEUCに変えてみます。 一応文字コード変換のソフトを探したんですが、 EUC→s-jisしか見つからなかったので… 適当なエディターを探してみます。 ありがとうございました。

その他の回答 (1)

  • selenity
  • ベストアンサー率41% (324/772)
回答No.1

Shift_JISのhtmlページに変更するか、perlで書かれたCGIなら、jcode.plで変換できます。 普通はCGIを動かすサーバの環境に合わせます。

namiri_e
質問者

お礼

あー、やっぱりcgiの方で変換が必要なんですね。 ありがとうございました。

関連するQ&A

  • 文字コード変換について

    お世話になります。フォームのデータをcsvファイルで 蓄積するcgiを作成しました。csvファイルはeucコード で保存されています。このcsvファイルを、nkfコマン ドみたいに、s-jisコード変換して別ファイルを作成することは出来るのでしょうか?よろしくお願いいたし ます。 環境 OS redhat9

    • ベストアンサー
    • CGI
  • DreamWeaverでEUCが文字化けする。

    DreamWeaverを使ってホームページを作っています。 最初S-JISでHPを作っていたのですが、CGIページを作る際にEUC-JPの方日本語の文字処理上都合が良かったため、CGIページをEUC-JPにしました。 そこで今までDreamWeaverで作った他のページもテキストエディタで 文字コード EUC-JP、 改行コードをUNIX形式、 HTML中のcharset=EUC-JP にしたのですが、今度はDreamWeaver上で日本語が文字化けするようになってしまいました。 DreamWeaverで普通にEUC-JPが文字化けせずに表示させるには一体どのようにしたらよろしいのでしょうか。 ご存知の方がいらっしゃいましたら教えて下さい。 よろしくお願いします。

  • 文字コードEUCの掲示板にWindows(S_JIS)で書き込むと文字化けする

    【環境】 RedHatLinux7.2 Apache_1.3.27 CGI動作確認済み 掲示板のCGIスクリプトをサイトからDLし、Linux上のapacheで動かそうとしています。 perlのパスを通し、.cgiの文字コードをEUCに変換することで動作したのですが、文字コードの問題が発生してしまいました。 CGIがはき出す掲示板のHTMLはEUCです。Windowsのブラウザから閲覧した場合、文字コードは自動的にEUCが選択され問題ありません。 掲示板に書き込みを行った際に、文字コードの食い違いが発生してしまいます。Windowsから書き込んだ文字はS_JISなのでコードが2種類存在し、書き込んだ文字列(S_JIS)の方が文字化けしてしまうのです。 多分初歩的なことだと思うのですが、頑張ってみても解決しませんでした。どなたか、同現象になって無事解決した方いらっしゃいませんでしょうか?

  • 文字コードEUC→SHIFT-JISにすると動作しません

    http://cgikon.com/search/detail.php3?menu=1&cgi_id=412 上記の簡単なスクリプトを使いたいと思っています。 文字コードがEUCとなっており、そのままの状態で設置すれば動作します。 EUCではなく、SHIFT-JISにして動作させたいのですが、中に書かれている「EUC - JP」を「SHIFT - JIS」に書き換えて、またファイルの文字コードも「SHIFT-JIS」として保存しました。 またCSVデータも「SHIFT-JIS」に変換して保存。 変換したファイルをアップしてみましたが、表示される表の数値の箇所が真っ白になってしまいます。 一番上の行と一番左の列は表示されます。 足し算される数値の部分だけが表示されません。 どのようにすれば、EUCからシフトJISに変換して、動作させる事ができるのでしょうか。 アドバイスをお願い致します。

    • ベストアンサー
    • Perl
  • InternetReadFileで読み込んだECUサイトの文字化け?

    InternetOpen→InternetOpenUrl→InternetReadFileでHTMLソースを読み込んでエディットボックスに出力すると、EUCのサイトだけ文字化けします。この場合EUCからS-JISに変換して出力するのが一般的なのでしょうか? また、読み込んだHTMLソースから文字列を抜き出したりしたいのですが、この場合もEUCからS-JISに変換してから扱うのでしょうか? 初心者ですがよろしくお願いします。 VC++6.0です。

  • 文字化け

    登録フォームを作成し、入力した内容でDBに追加を行うなかで、PHPmyadminで実際に見てみると文字化けしています。 レンタルサーバ(OS:linux) (1)登録フォーム(shift_jis) ↓各値を渡す (2)確認ページ(shift_jis) ↓各値をmb_convert_encoding(shift_jisに変更) (3)追加 すると文字化けします。 以前、cgi-lib.plを用いてperlで書いていたものは、 文字化けしていません。 どこがおかしいのでしょうか? ちなみに (1)登録フォーム(euc-jp) ↓各値を渡す (2)確認ページ(euc-jp) ↓各値をmb_convert_encoding(euc-jpに変更) (3)追加 としても文字化けしています。 (DBだけでなく、ページ全体も)

    • ベストアンサー
    • PHP
  • メール送信後のHTMLが文字化けします

    FORMからsendmailを利用してメールを送信し、その結果を「送信できた」、「未入力項目がある」などを出力するHTMLとして出力するcgiを作ったのですがHTML出力が文字化けします。 メールのsubjectやbodyは文字化けせず正常に送信できます。HTMLにはMETAタグでeuc-jpやshift_jisと色々とトライしました。cgiもshift_jisとeuc-jp両方で試しましたがどちらも文字化けします。文字化けしているときにブラウザのエンコードで自動選択すると、ブラウザがcgiの使用コードに自動的に合わせてくれて正常に表示してくれますがこれがcgiを起動するたびで面倒です。エンコードを自動選択しないと文字化けしてそのときのブラウザが選択している文字コードは「西ヨーロッパ言語(ISO)です。 どうしたらブラウザに使用している文字コードを認識させるられるでしょうか?

    • ベストアンサー
    • CGI
  • htmlとperlを記述する時の文字コードについて

    今からホームページを作成するところです。 やりたいこととして、 1.html全体はShift_JISで記述 2.Shift_JISのtxtファイルから検索をかけて該当レコードを表示させるページをperl(CGI)でhtmlとして出力 この場合perlはShift_JISで記述すると問題があるでしょうか? CGIでtxtファイルを操作したとき内部ではeuc-jpで扱われる為、入出力の際にはjcodeなどを使った相互変換が必要になるとか思いますが、こちらの問題は取りあえずおいておきます。 perl自体はやはりeuc-jpで記述すべきでしょうか? htmlも含めて全てeuc-jpで記述すれば問題ないかと思うのですが今後の参考の為に聞いておきたいと思い質問させて頂いております。 また、上記のやりたいことを実現するのにperl以外のもっと良い方法があればご紹介頂ければ幸いです。 何卒よろしくお願い致します。

    • ベストアンサー
    • Perl
  • コードに対する疑問(eucコードとs-jisコード)

    eucコードで半角カナは2バイト表現、s-jisコードは1バイト表現と認識しています。 eucコードで保有するデータが40バイトとした場合、 s-jisコードで保有するとしたら、単純に20バイトとすることで影響はありますでしょうか?

  • 機種依存文字の文字コード変換

    現在、Shift-JISでCGIを作成しています。言語はPerlです。HTMLファイルから送信された文字をDBに登録するのですが、CGIをShift-JISで作成しているのに、DBがEUCとなっているため、jcode.plを利用して文字コードを変換しています。 しかし、文字が機種依存文字である場合、jcode.plでは文字コード変換ができないようで文字化けを起こした文字をDBに登録しようとしてエラーを起こしてしまいます。 何とか機種依存文字をコード変換したいのですが、可能でしょうか?

    • ベストアンサー
    • Perl