0

重複の可能性:
ユーザーが入力した改行をTEXTAREAからデータベースに保存するにはどうすればよいですか?

テキストエリアでEnterキーを押すと、改行になります。しかし、アクションページからこの値を受け取ると、空白に変換されます。空白ではなく、アクションページから改行としてENTERKEY文字を受け取りたい。サンプルコード:これはHTMLコードです

<form action="go.php" method="POST">
<textarea name="aa" cols="10" rows="10"></textarea>
<form>

彼女はgo.phpコードです:

<?php
$txt=$_POST['aa'];
echo $txt;
?>

「これは私です(ENTERキーを押してください)これは彼です(ENTERキーを押してください)」のように入力すると、「これは私(改行)これは彼(改行)」のように出力したい。しかし、私はgo.phpから「これは私ですこれは彼です」のように取得しています。ここに改行はありませんが、空白があります。誰か助けてください。なぜそれが起こるのか。

4

2 に答える 2

4

私はあなたが欲しいと信じていますnl2br。これにより、文字列内のすべての改行の前にHTML改行が挿入されます。これをデータベースに保存することを計画している場合は、mysql_real_escape_string()改行をエスケープするために同様のものが必要になります。

<?php
echo nl2br("foo isn't\n bar");
?>

HTMLは次のようになります。

foo isn't<br />
 bar

コードは次のようになります。

<?php
$txt=$_POST['aa'];
echo nl2br($txt);
?>
于 2013-01-04T21:40:44.623 に答える
2

改行をキャプチャして置き換えるには、 nl2br関数を使用する必要があります。以下の作業コード。

<form action="go.php" method="POST">
<textarea name="aa" cols="10" rows="10"></textarea>
<input type="submit" value="s">
</form>
Here is the go.php code :

<?php
$txt=$_POST['aa'];
echo nl2br($txt);
?>
于 2013-01-04T21:49:22.773 に答える