1

我希望将用户的输入从 textarea 插入 mysql 数据库。截至目前,如果用户键入以下内容:

"Hello.


hello."

它将被插入到数据库中而没有换行符。我怎样才能解决这个问题?

4

3 回答 3

4

您可能正在使用 phpMyAdmin 来判断不存在换行符。如果是这样的话,那就是在骗你。phpMyAdmin 将内容显示为 HTML,并且换行符转换为单个空格。

即使您只是输出值而不使用 phpMyAdmin,您的 HTML 仍然会折叠空白区域。要保留格式,请在<pre>标签之间或以 css 样式输出它white-space: pre

于 2012-06-02T23:45:03.077 回答
1

实际上换行符已插入数据库中,您只是看不到它们,因为它们是"\r\n",这是换行符回车符,请在此处阅读有关它们的更多信息

我相信您应该像这样存储数据:没有进行转换,当您将内容写入 HTML 时,您只需要做一个nl2br($content).

而且它也很容易编辑,因为当将该内容输出到 textarea 标签时,它会自动识别"\r\n"

于 2012-06-02T23:49:49.430 回答
0

如果使用 PHP,我建议使用$message = nl2br($message);

这将为您将换行符变成 br。

于 2012-06-02T23:43:47.417 回答