【问题标题】:Insert in MYSQL from document table从文档表中插入MYSQL
【发布时间】:2015-05-03 13:44:19
【问题描述】:

我正在使用 php 从 mysql 表中的 CSV 文件中输入数据。 CSV 的一列包含我无法维护任何格式的文本数据,因此在网页中显示的数据不会以很好的方式显示。 我现在正在考虑将数据保存在 MS Word 表中,并使用 php 从 Word 表中将数据插入 mysql 表中。再一次,对我来说唯一的好处是保持一列数据的格式。

如何在mysql表中输入word表中的数据?

【问题讨论】:

  • 使用 MS Word 格式很棘手。您能否提供该列中数据的示例,以便我就保持其格式提出一些建议?
  • 我还是不明白你的问题是什么 :( 你希望它在网页上的格式是怎样的?
  • Column1_Name: Tim, Column2_Location: Amsterdam, Column3_Description: 这里有关于 Tim 的描述(最多 2000 个字符)。数据可能会或可能不会在段落之间带有空行。我希望当 mysql 表中的数据显示在网页上时,文本会出现空行。此外,如果部分数据带有项目符号,则网页应显示带有项目符号的文本。

标签: php mysql csv ms-word


【解决方案1】:

所以根据 cmets 你需要使用 HTML 格式化描述列中的文本。

这不是一件容易的事,而且可能非常复杂,具体取决于您需要的格式的确切功能。

例如,要使新行在 HTML 页面中显示为新行,您需要将新行字符替换为 <br /> 标签:

$description = str_replace("\n", "<br />", $description);

如果您需要一些更复杂的格式,如项目符号列表或斜体/粗体标签,您将需要实现更复杂的解析和格式代码。 对于项目符号列表,您需要将内容拆分为行 ($arr = explode("\n", $description)),找到以表示项目符号的字符开头的行(例如,取决于您的列格式)并将它们替换为 &lt;li&gt; 标记。除此之外,您还需要一个 &lt;ul&gt; 和 &lt;/ul&gt; 标记来标记列表的开始和结束。

您需要在 HTML 中保留的每种格式都需要类似的方法。

【讨论】:

  • 好吧,如果我使用 word 格式的文本并通过网页使用 html 表单输入它,然后使用以下代码获取数据: $_SESSION['Description']= $_POST['描述']; $myDescription = trim($_SESSION['Description']); $myDescription = nl2br(myDescription);然后我可以在随后通过网页显示时保持格式。回到我的问题:如何将数据从 Word 表输入到 mysql 表中,以便保持格式?
  • 当您从 Word 文档中复制文本片段并将其粘贴到表单域中时,浏览器会执行保留格式并将其转换为 HTML 代码的任务。你不能在你的 php 脚本中轻易做到这一点。我建议使用 CSV 解析并根据需要转换格式。
猜你喜欢
  • 1970-01-01
  • 2021-09-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-30
  • 1970-01-01
  • 2010-11-21
相关资源
最近更新 更多