可能重复: How to save user-entered line breaks from a TEXTAREA to a database?
当我按下文本框中的ENTER键时,它会转到换行符。但是,当我从操作页面接收到此值时,它将转换为空白。我希望将ENTER键字符作为操作页面中的换行符,而不是空白。示例代码:这是HTML代码
<form action="go.php" method="POST">
<textarea name="aa" cols="10" rows="10"></textarea>
<form>她是go.php代码:
<?php
$txt=$_POST['aa'];
echo $txt;
?>如果我输入“这是我(按回车键),这是他(按回车键)”。我希望输出为“这是我(换行符),这是他(换行符)”。但我从go.php那里学到了“这是我,这是他”。这里没有任何换行符,只有空格。请大家帮帮我。为什么会发生这种事。
发布于 2013-01-04 21:40:44
我相信你想要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-04 21:49:22
您需要使用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);
?>https://stackoverflow.com/questions/14165413
复制相似问题