将PHP代码存储在MySQL上并使其运行

时间:2014-02-06 16:46:43

标签: php mysql

我的客户端有自定义CMS。 HTML联系表单页面存储在MySQL表中。 我需要修改表单,我需要将PHP和MySQL查询添加到表单中以填充Combobox,并将值存储在同一DB上的另一个表中。

当我尝试在该表单上插入PHP代码时(在MySQL表上),php代码无法呈现。例如,如果我添加

<?php echo "string"; ?> 

在浏览器上的DB字段中存储的HTML代码中间呈现:

<!--?php echo "string"; ?-->

所以,没有显示。

编辑:

我在DB上需要修改的内容如下:

我有一个存储在DB上的表单,其中一个输入是一个文本框。需要将其更改为下拉菜单,其中的选项将从其中一个数据库表字段填充。因此需要在HTML表单中间进行php和mysql查询...

2 个答案:

答案 0 :(得分:1)

您需要修改从数据库输出内容的代码,以便执行包含的PHP代码而不是仅回显。请查看eval()功能。

正如评论中所述:这是一种通常被认为不安全的模式。现在可以写入数据库的任何人都可以在服务器上执行任何PHP代码。有关详细讨论,请参阅此问题:When is eval evil in php?

答案 1 :(得分:0)

$str = '<?php echo "string"; ?>'; // Your DB content

eval("?> $str <?php ");