0

テキスト領域があり、ユーザーがフォームを送信すると、データをdbのdbに保存すると、改行がうまく機能しますが、エコーでそれらを表示すると改行が消えます:(すべてをチェックし、strip_tagsやstrip_tagsなどのすべての検証関数を削除しましたそのため、dbから純粋に印刷しましたが、同じことなので、何が問題なのか誰にも教えてもらえますか?事前にthnx

4

1 に答える 1

5

改行textarea\r\n、ブラウザーの場合は単なる空白です。<br />それらをタグに置き換える必要があります。phpがそれを処理しnl2br、そのための機能があります:

echo nl2br($stringFromDB);

注:ユーザー入力を出力するときは、常に最初にエスケープしてください。したがって、基本的には次のことを行う必要があります。

// Chaining functions like this is bad. Avoid in real world apps.
echo nl2br(htmlspecialchars($stringFromDB, ENT_QUOTES, 'UTF-8'));
于 2013-06-26T12:26:06.517 に答える