MySQL表导出为HTML

时间:2010-04-27 07:53:59

标签: mysql html export

我将MySQL数据导出到html时遇到了一些问题。问题是在一个字段中我有这样的值:<a href="http://google.com">Google</a>当我以html格式导出表时,为这个字段生成的html表包含:&lt;a href=&quot;http://google.com&quot;&gt;Google&lt;/a&gt;,它不是有效的html链接。有没有办法导出没有mysql的表来转换<>字符?

我没有使用任何代码。我只使用mysql命令:mysql -H "select ...."并指定输出文件。

谢谢!

2 个答案:

答案 0 :(得分:1)

when i export the table in html format the generated html table for this fields contains:
&lt;a href=&quot;http://google.com&quot;&gt;Google&lt;/a&gt;

这很奇怪,我没有得到那种行为(在5.1.34中):

$ mysql -H -e "select 'a&b<c>d'";
<TABLE BORDER=1><TR><TH>a&b<c>d</TH></TR><TR><TD>a&b<c>d</TD></TR></TABLE>

希望你引用逃脱的行为!从我的示例中可以看出,否则会冒着格式错误的HTML的风险。例如。值中的</table>会破坏整个输出。

如果你想控制输出格式以允许某些或所有列中的原始HTML内容,那么(a)你需要编写一些代码来执行此操作,并且(b)你必须确保数据库中的内容是已知的安全HTML,没有可能破坏表格的格式错误的字符串或恶意JavaScript。

-H的{​​{1}}选项不足以完成任务,从我们的不同结果来看,这似乎非常不可靠!您需要选择带有MySQL绑定的脚本语言并手动输出行。

答案 1 :(得分:0)

导出目的是导出数据,而不是提供对它们的直观解释。 如果你想拥有有效的链接,你必须使用php或任何脚本语言。

顺便说一下,即使你可以用技巧来做,也不应该这样做。