dポイントプレゼントキャンペーン実施中!

HTMLフォームのテキストエリアで改行した場合の処理についてご質問します。

Windowsのローカル環境で試しています。
改行コードLFでPHPを作成しています。

○改行コードの認識
LF(\n)Unix,Mac OS X
CR(\r) Mac OS 9
CRLF(\r\n)

○テキストエリアからの入力値の処理
CRLF、CRをLFに変換しています。
$value= str_replace ("\r\n", "\n", $value);
$value = str_replace ("\r", "\n", $value);

このあとDBに値を格納しています。

○出力の際の処理
DBから値を取得。
phpのprint関数で下記を出力。
<textarea >${value}</textarea>

上記処理で、ローカル、サーバともに正常に動作しています。

しかし改行コードがLF(\n)なのでCRLF(\r\n)のWindowsで表示したときには問題が起きそうな気がします(実際には正常に動作)。

なにかしっくりこなくて質問させていただきました。
よろしくお願いします。

A 回答 (1件)

>> 改行コードがLF(\n)なのでCRLF(\r\n)のWindowsで表示したときには


>> 問題が起きそうな気がします(実際には正常に動作)。

textarea内では、単にブラウザ(IE)が WEBサーバからきた単独のLFを見つけるとCRLFに変換しているだけです。
    • good
    • 0
この回答へのお礼

ご回答いただきありがとうございます。

>textarea内では、単にブラウザ(IE)が WEBサーバからきた単独のLFを見つけるとCRLFに変換しているだけです。

不思議に思っていたので、とてもすっきりしました。

お礼日時:2008/12/02 18:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!