0

お問い合わせフォームを実装しています。ユーザーがフォームを送信すると、すべての入力が検証され、セッションに保存されます。次に、コメントの投稿が成功したことをユーザーに通知するページに転送され、入力されたデータが表示されます。

私が抱えている問題は、すべての新しい行が を使用して改行として正しく表示されないことですnl2br()

ユーザー入力:

<textarea name="comments" rows="10" cols="50" id="comments" tabindex="5" title="comments"> <?php echo isset($_POST['comments']) ? $_POST['comments'] : ''; ?>

確認したら…

$_SESSION['comments'] = $_POST['comments'];

連絡先送信ページに転送され、文字列に追加されて表示されます

$forwardString = "<h2>New Website Comment: </h2><h3>" . $cEmail . "</h3><p>" . $cComment . "</p>";

次に表示されます:

echo nl2br($forwardString);

nl2br() 関数はどこに実装すればよいですか?

入力例:

Just a test to verify contact works correctly.

We should see two line breaks here.
One line break here

現在の収量:

Just a test to verify contact works correctly.We should see two line breaks here.One line break here
4

1 に答える 1

0

試す

echo nl2br(stripslashes($forwardString));

\n が \n になるように、文字列を 2 回エスケープしている可能性があります。

于 2013-05-28T20:39:28.933 に答える