- ベストアンサー
CGIを使用してtextareaデータをHTMLファイルに変換の改行。
textareaに入れられたデータをCGIを使用して、HTMLファイルに変換しています。 その時に、改行が1行ずつ多く入ってしまうようなのです。 例えばtextareaに あああああ あああ いいい ううう と入っていた場合、できあがったHTMLファイルは あああああ あああ いいい ううう となってしまうのです。 できあがったHTMLファイルを見ても改行が多いわけではなさそうなのですが…。 $buffer =~ tr/+/ /; $buffer =~ s/\n/<BR>/g; $buffer =~ s/'/\'/g; $buffer =~ s/・//g; みたいな感じでなってますが。 おわかりの方よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
$buffer =~ s/\n/<BR>/g; ↓ $buffer =~ s/\r\n/<BR>/g; $buffer =~ s/\n/<BR>/g; $buffer =~ s/\r/<BR>/g; でどうでしょうか?
その他の回答 (1)
- osamuy
- ベストアンサー率42% (1231/2878)
回答No.1
<pre>~</pre>の中で、変換してませんか?
質問者
お礼
回答ありがとうございます。 (さきほどはありがとうございました。) <PRE>が私が書いたもののなかには見当たらないのですが…。
お礼
回答ありがとうございます。 通常のテーブルなどを作成するのであれば私がかいたものでもOKのようなのですが、 TEXTAREAですと<BR>が出てしまうようなのでダメみたいです…。 なので $buffer =~ s/\n//g; $buffer =~ s/'/\'/g; $buffer =~ s/ //g; としてみたところできあがったHTMLファイルを見る分には問題ないのですが、 HTMLファイルのソースをみてみると、改行してあるはずのところに半角の・(コピペすると消えてしまうので) があり1行が長く入っています。 HTMLが表示上問題ないのでそこまでしなくてもいいのかもしれないのですがやはり美しくソースを書きたいので。 おわかりになればよろしくお願いします。