我在HTML表单中有一个基本的textarea
,如下所示:
<textarea id="description" name="description"></textarea>
输入并提交文本后,会将其发送到Amazon Web服务器上的SQL数据库。
在我的iOS应用程序中,我运行一个php文件,它返回一个包含该数据库内容的jSON对象。
当我在我的应用程序中打印此数据库的内容时,只要在textarea
中发生回车,就会出现换行符。
所以输入框看起来像这样:
现在,我从不点击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结束了?
答案 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)
仅用于新行