• ベストアンサー

テキストエリアの改行を取得したい

最近CGIを独学ではじめたのですが、複数行のテキストエリアからの文字列の取得をした場合、改行が反映されずに表示されます。 改行コードのようなものは取得されている、とちらりとどこかで見たことがあるのですが、どのように取得して改行させるかが分かりません。 すみませんが、ご存知の方がいらっしゃいましたら教えていただけないでしょうか。 このような感じで書きました。 my $cgi = CGI::new(); my $area = $cgi->param('text'); print "Content-type: text/html\n\n"; print $area;

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

  • ベストアンサー
  • atse
  • ベストアンサー率83% (36/43)
回答No.1

> print "Content-type: text/html\n\n"; htmlで改行する場合は、再度テキストエリアなどに表示しない場合、 <br>といったhtml用のタグを用いるのが通例です。 ですので、そのまま出力して改行を反映させるならば text/html から text/plain に変え、 print "Content-type: text/plain\n\n"; print $area; としてください。 htmlとして表示するなら、改行を<br>に置換すれば表示できるでしょう。 #全て置換する $area =~ s/\r\n|[\r\n]/<br>/g; print "Content-type: text/html\n\n"; print $area;

if-so-at
質問者

お礼

ご回答ありがとうございます。 なるほど、置き換えで改行が出来るのですか。 ありがとうございました

関連するQ&A