HTML表单Textarea回车导致读取时换行

时间:2015-08-18 10:54:55

标签: php html ios sql database

我在HTML表单中有一个基本的textarea,如下所示:

<textarea id="description" name="description"></textarea>

输入并提交文本后,会将其发送到Amazon Web服务器上的SQL数据库。

在我的iOS应用程序中,我运行一个php文件,它返回一个包含该数据库内容的jSON对象。

当我在我的应用程序中打印此数据库的内容时,只要在textarea中发生回车,就会出现换行符。

所以输入框看起来像这样:

enter image description here

现在,我从不点击Enter键一次。这些回车在输入框内自动发生。

当我在应用程序中读取字符串时,它看起来像这样:

This is a multiline test to

check that everything is 

working fine.

如何忽略这些返回并将文本存储在数据库中,就像它是一行文字一样。

我希望它看起来像这样:

This is a multiline test to check that everything is working fine.

我是否需要在iOS端执行此操作?或HTML结束?还是PHP结束了?

3 个答案:

答案 0 :(得分:0)

您可以首先使用PHP preg_replace函数删除textarea中的所有换行符:

$description = preg_replace('/\n|\r/', ' ', $_POST['description']);

在存储到数据库之前放置代码。

答案 1 :(得分:0)

我注意到你说你正在使用这段代码:

<textarea id="description" name="description"></textarea>

HTML 5引入了wrap属性。

你遇到的问题是你有&#34;硬包装&#34;设置,这会导致换行换行。

自&#34;软包装&#34;默认设置,我假设你有一个地方&#34;硬包装&#34;集。

尝试检查元素,看看这里发生了什么......

您应该只需设置wrap="soft"并强制解决您遇到的问题。

答案 2 :(得分:0)

只需按照建议更改替换,以删除两个回车符之一(根据需要删除\r\n) 例如:

preg_replace('/\n/', '',$description)

仅用于新行