• ベストアンサー

文字コード? 推奨UTF-8?

以前、EUC-JPの文字コードを使っていましたが、ホームページの文字コードをUTF-8に変えた後、 クッキーやフォーム(FORMタグ)が正しく動作しなくなりました。 Perl(Perlも5.6から5.8に変更)でCGI組んでいるのですが、何が原因なのでしょうか?

  • Perl
  • 回答数1
  • ありがとう数0

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

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

質問文からだけでは、原因は文字コードとしか言いようがないのでは??Σ(・ε・;) http://sakaguch.com/utf1.html あたりは参考になりませんでしょうか??

関連するQ&A

  • Perlの文字コード

    1-2年ほど前、Perl5.8でソース自体をUTF8N(LF)で記述するようになり、 以下のように書いていました。 use utf8; use encoding "utf8"; use Encoding; それからPHPに移り、PHPでは、ソースはEUC-JP、DBもEUC、HTMLに出力する際もEUC-JPで統一していました。 最近またperlを使い出して疑問に思ったのですが、 perlではどのような文字コードで統一すれば一番よいのかということです。 javascriptはUTFだと動作しない端末(ザウルス)などあり、 perlもEUC-JPで統一しようと考えています。 昔、UTF8にこだわったのは、おそらく 「構」という文字は5Cなので、 文字コードによる不具合(ソース,js,cssで)を避けるためと、流行のUTF8にしたと思います。 perlでEUC-JPで文字コード統一させるメリットデメリットが知りたいです。 最近perlで書かれたサイトでHTML出力がShift_JISだったのですが、perlソースもシフトJISかは知りませんが、Shift_JISで統一するデメリットが知りたいです。 あと、WEBでどの文字コードが現在主流で、今後どうなるかも知りたいです。 EUC-JPで安泰なら、話は早いですが・・・

    • ベストアンサー
    • Perl
  • EUCのファイルを開くとUTF-8になる

    文字コードがEUCのperlで書かれたCGIをブラウザで表示すると、UTF-8となっています。(自動認識と設定していた場合) その場合は、文字化けしてしまいます。 ブラウザの文字コードをEUCに変更すると、文字化けせず表示されます。 perlプログラムは、EUCで書かれているのに、ブラウザでは(自動認識と設定していた場合)、UTF-8となる理由はどこにあるのでしょうか? perlプログラムでは、METAヘッダにEUC-JPと記述されています。 ちなみに、サーバのOSはCentOSです。(httpd.confでは、UTF-8が設定されています)

  • ブログの文字コードの変更?

    現在Movable typeにてブログを運営しています。 しかし、文字コードがUTF-8というものらしく、メールフォームやCGIをブログ内で使うと文字化けがおきてしまします。 そこでEUC-JPに変更することで回避できるとお聞きしたのですが本当でしょうか? また本当の場合、EUC-JPに変えたいのですが、途中から変えられるものでしょうか?変更方法等、ご存知の方はアドバイスいただけたら幸いです。 宜しくお願いいたします。

  • OSの文字コードはUTF-8か?EUC-JPか?どちらがいいでしょうか・・・

    この度、CentOS4で自宅サーバを構築しようと思っています。 そこで、確認したいことがあるので、ご意見など頂ければと思います。 CentOS4はシステムの文字コードがUTF-8ですが、これはEUC-JPに変更したほうがいいのでしょうか? サーバの目的としては、知り合い・身内などが使うWEB・FTP・メールサーバ機能を持たせ、Sambaを設定してファイルサーバにもする予定です。 WEBサーバ上では、各人がPHP・Perlによるスクリプトを動かしますし、Tomcatも使います。 私自身も、サンプルなどとしてosCommerceやXPOOSなどのオープンソースのものも動かします。 上記においては、EUC-JPに変更したほうがいいのでしょうか? 今までは、FedoraCore3を使っていましたが、EUC-JPに変更していましたのでEUC-JPにすればいいかもしれませんが、これから作成するPHPやPerlのスクリプトなど今後の変更を考えれば、はじめからUFT-8のほうが良いのかなと思っています。 ただ、他の利用者は、エディタやFTPソフトなど使用しているソフトがUTF-8に対応しているものを使用しているとは限らないので、やっぱりEUC-JPのほうが良いのかなという気もしますし・・・ 皆さんのご意見・アドバイスなど頂けたらと思います。 よろしくお願いします。

  • Webプログラミングで文字コードがUTF-8である意味

    最近では、結構色んなサイトで文字コードにUTF-8が利用されていますが、 EUC-JPでない理由はあるのでしょうか? UTF-8であるメリット、EUC-JPであるデメリットが分かりません。 どなたがご教示下さい。

  • HTML formタグの文字コードについて

    各サイトのフォーム<form>をまとめて1つのテキストにしています。 文字コードはShift-jisです。 元のページがShift-jisの場合、問題なく動作するのですが、 EUCやUTF-8の場合、テキストボックスに入力した2バイト文字が 化けてしまいます。 これらのサイトの<form>をShift-jisで動作するようにはできない でしょうか?

    • ベストアンサー
    • HTML
  • PHPの文字コード

    phpでの文字コードについて、どうするか迷っています。 perlの時はutf8に統一しましたが、phpの場合、ソースはeuc-jpにして、html出力もeuc-jpにする例が多いのですが、私としては、ソースはutf8にしてhtml出力もutf8にしようと考えています。 理由は、半角カナやIBM拡張文字などはeuc-jpでは使えないためです。 みなさんにお聞きしますが、utf8ベースで開発した場合、文字列操作や正規表現やDB関係などで困るような具体的な例が知りたいです。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 標準入力からのutf-8→euc-jpで一部文字化け

    これまでeuc-jpで作られていたHTMLフォームページをutf-8に変更したところ、フォームメールCGIの文字列処理で「~」「-」「 」(半角スペース)など一部の文字が文字化けするようになってしまいました。 Jcode.pm → Encodeに変更してみても症状は変わりませんでした。 Encodeは初めて使うのですが、過去ログを見てもよく分かりません・・・ どうぞお力添えをお願いします。 (1)下記のperlの記述方法で間違っている箇所はありますか? (2)正しく出力できる方法がありましたら、教えてください。 (3)http://oshiete1.goo.ne.jp/kotaeru.php3?q=1540626 で話されている、右側の折れ曲がった「~」はどうやって入力するのでしょうか? (3)perl側もutf-8で記述すれば、文字化けなど発生せずに処理出来るものなのでしょうか? ↓perl5.8 文字コードeuc-jp #!/usr/bin/perl use Encode;#### if ($ENV{'CONTENT_TYPE'} =~ /application\/x-www-form-urlencoded/i) { binmode(STDIN); read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'}); @data_s = split(/&/,$buffer); foreach $buffer (@data_s) { ($key,$value) = split(/=/,$buffer); $value =~ tr/+/ /; $value =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack("C",hex($1))/eg; $value = encode("euc-jp", $value);#### print "$key = $value\n"; } }

    • ベストアンサー
    • Perl
  • 文字コード

    ホームページを作る際の文字コードはどうやって決めればいいですか? 何を基準に決めればいいですか? とりあえず今は暫定的にUTF-8で作っていますが、 Shift_JISやEUC-JPを使う場合、どういう時が適しているのでしょうか?

  • 文字コードEUCのPerlプログラムが文字化けしてしまいます

    Perlで書かれたCGIを実行しようとしているのですが、プログラムはEUCで記述されているそうです。nkf -g ***とするとEUC-JPとなります。 print " <META http-equiv=\"Content-Type\" content=\"text/html; charset=EUC-JP\">\n"; とも記述されているのですが、ブラウザで実行(閲覧)すると文字化けして、ブラウザのエンコードは、Unicode(UTF-8)になっています。 ちなみに、OSはCentOS5.2です。 どうやったら、EUCで記述されたCGIが文字化けせずに実行できるのでしょうか? teratermでサーバに接続語、viコマンドで表示しても文字化けしています。ファイルの文字コードをEUCからUTF-8にして(nkf -w ***)、ブラウザでアクセスしても文字化けしてしまいます。

    • ベストアンサー
    • Perl

専門家に質問してみよう