SQL数据库中的PHP字符串显示为纯文本

时间:2012-07-03 20:07:18

标签: php sql

原谅初学者的问题 - 我试图使用另一个命令从SQL数据库调用PHP命令,但网页显示命令为纯文本。

例如,我在页面上的命令是<?php echo $row_rsLeftColumn['code']; ?>,并在SQL数据库中调用此项:<?php echo '<p>Hello World</p>'; ?>。但是,即使我可以在源代码中看到该行,网页也不显示“Hello World” - 因此,该行已成功从SQL数据库中提取,该页面只是将其视为纯文本。

当我直接将该行添加到网页中时,它按预期工作,因此麻烦似乎不是PHP在Web服务器上配置错误;更确切地说,当它从SQL数据库调用它时,该页面无法识别PHP,即使它直接在页面上识别它。

您可以提供任何帮助。

3 个答案:

答案 0 :(得分:0)

如果数据库中有要提取和执行的PHP代码,则需要使用eval()来运行它。

请小心使用eval,因为它不会对代码执行任何检查,因此如果最终用户可以输入代码,他们可以编写他们想要的任何恶意代码。如果必须,请在使用之前仔细阅读eval上的文档。请注意,在调用eval之前,必须从代码中删除<?php ?>标记。

答案 1 :(得分:0)

它以字符串形式出现在数据库中。现在你把它拉出来告诉它回应。你应该使用eval()函数。

<?php eval($row_rsLeftColumn['code']); ?>

答案 2 :(得分:0)

抱歉,我还没有在评论中回复......

eval()需要PHP代码,因此如果您的字符串以HTML开头,则需要在?>前加上它。

<?php eval('?>' . $row_rsLeftColumn['code']); ?>