0

前のページからいくつかの情報を投稿してから、メールで送信しようとしています。

前のページから投稿された情報はテキスト領域内にあり、ユーザーがそのテキスト領域に入力するときに Enter キーを押したときに、新しい行を自動的に追加したいと考えています。

nl2br を使用してみましたが、うまくいかないようです。私のコード:

前のページからの投稿:

$BREAKINGNEWS=nl2br($_POST['BREAKINGNEWS']);

その情報を取得して、電子メールのメッセージに入れます。

$message .=  nl2br($BREAKINGNEWS);

ご覧のとおり、2 回入力しましたが、それでも機能せず、各行の最後に \r\n が出力されます。

POST と $message だけで試してみましたが、うまくいきません。

何か案は?

4

3 に答える 3

1

SQL エスケープを使用している可能性があります。出力が SQL クエリで使用される場合にのみ、SQL エスケープを適用する必要があります。を使用するときは、データをエスケープしないようにしてくださいnl2br()

于 2013-08-27T08:18:57.053 に答える
0

これを試してください:

$text = str_replace("\r\n", "
", $text;
于 2011-09-14T13:20:02.883 に答える
0

「\r\n」を「\n」に置き換えますか?

$text = nl2br(str_replace("\r\n", "\n", $_POST['BREAKINGNEWS']));

EDIT:IsHTML(true) PHPMailerで 設定していますか?

$mail = new PHPMailer();
$mail->IsHTML(true);
于 2011-09-14T12:58:37.380 に答える