ホームページ作成初心者です。

フォームメールのメッセージボックスに書き込まれた文字が改行されず延々と一行が続いてしまいます。
これを直すにはどうしたら良いのでしょうか?

回答の条件
  • 1人2回まで
  • 登録:2006/06/23 09:27:37
  • 終了:2006/06/23 11:24:57

回答(5件)

id:ota2244 No.1

ota2244回答回数77ベストアンサー獲得回数42006/06/23 09:36:21

ポイント20pt

フォームに入力された文字列をブラウザで表示させる場合は、改行コードをBRタグに置き換える必要があります。


http://www.aimix.jp/cgi/acckghaizyo.html


こちらにPerlのサンプルがありますので参考にされてはいかがでしょうか?

id:int80h No.2

int80h回答回数359ベストアンサー獲得回数252006/06/23 09:37:45

ポイント20pt

HTMLタグリスト/フォームタグ/複数行のテキスト入力欄を作る - TAG index

http://www.tagindex.com/html_tag/form/textarea.html


■wrap="" (自動改行のタイプを指定する)

入力した文字が横幅いっぱいになったとき、自動的な改行を入れるかどうかを指定します。

hard … 自動改行が入ります。送信される内容にもその改行が維持されます。

soft … 自動改行が入りますが、送信される内容にはその改行は入りません。

off … 自動改行は入りません。横スクロールしながら延びていきます。

id:pxb12663 No.3

pxb12663回答回数395ベストアンサー獲得回数142006/06/23 10:42:13

ポイント20pt

フォームのテキストエリア(メッセージボックス)に挿入された改行はHTMLの改行とはコードが違うため(厳密には違いますが)、そうなってしまいます。

PHPやJavascriptなどのスクリプト部で、「¥r¥n」を「<BR>」に変換しなければなりません。

具体的にはPHPの場合、

$text = str_replace("\r\n","<br>",$text);

となります。

フォームにテキストを戻す場合は、

$text = str_replace("<br>","\r\n",$text);

となります。

id:wegman No.4

wegman回答回数9ベストアンサー獲得回数02006/06/23 10:44:50

ポイント20pt

今お使いの環境がわからないとはっきりとはいえないのですが、その中で可能性のあるものを1つ。

文字コードの設定ではないでしょうか?

おっしゃっているメールフォームは、インターネット上にある無料のCGIを使っていると仮定します。

大半の無料CGIの文字コードはShift-JISを想定して作られていると思います。

そのメールフォームのあるホームページの文字コードがEUC-JPやその他の文字コードの場合、メールフォームのCGIが改行を改行と見ていないのかもしれません。

そのページの文字コードを確認されてはいかがでしょうか?

はずしていたらすみません。

文字コードについて

id:aiaina No.5

aiaina回答回数8179ベストアンサー獲得回数1312006/06/23 10:52:48

ポイント20pt

一度、メッセージ全体を作ってから

HTMLソースを表示して改行したいところに \n

と入れてください。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません