質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.52%

  • Perl

    457questions

    Perlは多目的に使用される実用性が高い動的プログラミング言語のひとつです。

日本語を扱うと文字化けしてしまいます。

解決済

回答 2

投稿

  • 評価
  • クリップ 2
  • VIEW 559

trm

score -74

#!C:/WWW/perl64/bin/perl

use strict;
#use DBI;
#use DBD::SQLite



#print "Content-type: text/html; charset=shift_jis\n\n";
print "Content-type: text/html\n\n";
print <<"HTML";
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>書籍の情報書き込み</title>
</head>
  <body bgcolor="#000066" text="#000000" link="#0000ee" alink="#0000ee"
 vlink="#551a8b">
<form action="CGI194b1.html">
<textarea name="mojijouhou" rows="4" cols="40">商品情報をご記入ください。</textarea>
<br>
<input type="submit" value="送信"><input type="reset" value="リセット">
</form> 
<br>
<br>
</body>
</html>
HTML
exit;
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

+3

perlで日本語を扱う際は、処理を「内部コード」化された文字列について行わなければうまくいきません。

  • 文字列は何かをする前に必ず「内部コード化」
  • 「内部コード化」された文字列を、出力する直前にshiftJISなりUTF8なりに変換
    これが鉄則。

今はその処理ができていないのが文字化けの原因です。
以下の宣言をスクリプトの最初に書き加えてみてください。

# スクリプト中に日本語を直接書き込みたいときは以下のように宣言して文字列を内部コードで扱うよう指定する
use utf8;

# 出力をUTF8に
binmode STDOUT, ':utf8';

# 出力をshiftJISにしたい場合は以下のようにする
# binmode STDOUT, ':encoding(cp932)';

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/02/06 14:06

    use utf8;
    binmode STDOUT, ':utf8';
    とやっても画面が文字化けし、ファイルも文字化けしてしまいます。よろしくお願いします。

    キャンセル

check解決した方法

-3

マルチポストということでこの質問を閉めます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/09/27 13:51

    https://teratail.com/help#posted-otherservice

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.52%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    MySQLでUPDATEが実行できない

    前提・実現したいこと PHPとMySQLで記事を「投稿」「編集」「削除」するシステムを作っています。   投稿と削除は完成したのですが、UPDATE文で実装しようと思っている編

  • 解決済

    CGIでのログイン情報保持について

    保存チェックボックスにチェックが入っていれば ログイン情報をクッキーに保存し、ログイン情報が次回から自動で入力されているという システムを書いています。 CGIには全くの無知

  • 解決済

    動作が確認できない

    上のPHPコードで ・「投稿」は投稿にチェックかつボタン押下で入力内容を新規に投稿 ・チェックボックスには各投稿のIDをvalueに設定し、ボタン押下で受け取れるようにして

  • 解決済

    perlでpdfファイルをアップする機能を追加したい。

    用語が微妙におかしかったりすると思うのでご容赦ください。 perlプログラムにpdfファイルをアップする機能をサブルーチンとして追加させたいです。 アップする部分に関しては

  • 解決済

    ファイルダウンロードについて

    質問 PHPで、Submitボタンを押下すると、 テキストボックスに入力した値を処理して、処理結果をテキストファイルに出力するプログラムを作成しています。 このときSubmi

  • 解決済

    servletからjspへの値渡しについて

    ずっと悩んでいます。どうか助けてください。 現在、servletとjspを使用した画面を作成しています。 内容は、 ・『入力画面』のテキストボックスから文字を入力し、

  • 解決済

    textフォームへの文字の表示でエラー

    前提・実現したいこと javascriptで押した番号の数だけ足し算をしていき結果をtextフォームに表示するプログラムを作ろうとしています。 テキストフォームへの表示がうまく

  • 解決済

    テキストエリアの値を取得しhtmlでなくテキストエリアに表示させたい。

    下記コードにて、①②のテキストエリアに入力しボタンを押すとhtmlに表示されます。 これを③のテキストエリアへ表示できないでしょうか。 どうぞよろしくお願いいたします。

同じタグがついた質問を見る

  • Perl

    457questions

    Perlは多目的に使用される実用性が高い動的プログラミング言語のひとつです。