gpt4 book ai didi

php - 如何在从 MySQL 数据库导入时而不是之前进行文本换行?

转载 作者:行者123 更新时间:2023-11-29 11:39:20 30 4
gpt4 key购买 nike

我遇到了与导入文本换行相关的问题,该文本之前使用经典的 PHP - HTML 表单方法插入到 MySQL 中。

问题如下。我想将 MySQL 数据库中保存的文本加载到我的网页的“新闻”部分。问题是我的网页有 PC 版和移动版,每个版本的宽度不同。

所以,当我将文本提交到 MySQL 时,我不想插入换行符(我的意思是,如果文本行宽度超过了 hipotethical“cols”宽度,表单将提交换行符,假设我会执行“物理”或“硬”换行;手动插入换行符来分隔段落,当然我想保留)因为据我所知,您必须指定“cols”,这是一个可以告诉宽度的参数进行换行之前的行。

这并不有趣,因为正如我告诉过你的,我的“新闻”部分上的文本字段将具有不同的宽度,因此从 MySQL 导入带有换行符的文本不会调整两个不同的“新闻”大小我的网站。

我需要的是将文本上传到 MySQL,不带换行符,然后让我的网站中的两个“新闻”部分对文本进行格式化。

我认为这很容易,因为我只是将 MySQL 数据库中保存的文本解析为 <div>具有指定宽度的标签。但问题是文本溢出了 <div>每次的容器宽度。

这是我在 HTML 表单中用作文本输入的内容:

<textarea name="STORY" wrap="physical">EXAMPLE</textarea> 

为了将新闻注入(inject) MySQL,我使用典型的 PHP:

$var = "INSERT INTO exampleTable ('story') VALUE ($_POST['STORY']);

要加载保存的文本,我只需回显变量的值,该变量从 div 标签之间的 MySQL 数据库的 Story 字段导入文本:

echo "<div>".$story."</div>";
正如你所看到的,因为当我从 MySQL 中插入文本时,我不想使用“硬”换行,以避免在行中插入换行符,否则会超出“列”宽度,我使用“physycal”换行,但我没有指定“cols”,所以我认为这应该防止表单插入除我手动插入的换行符之外的换行符(按“enter”键)。

但是当我回显时,生成的文本将溢出我的 div宽度,正如我之前告诉过你的。

不应该div width 将文本包裹在其自身内部?

我应该删除 wrap="physhical"表单的属性?

最佳答案

首先,请注意,您插入数据库的操作很可能是不安全的,并且可能会导致 SQL 注入(inject)。

要删除每个换行符,您可以执行以下操作:

echo "<div>".str_replace("\n", "", $story)."</div>";

关于php - 如何在从 MySQL 数据库导入时而不是之前进行文本换行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36080865/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com