从数据库运行PHP代码

时间:2014-11-17 09:03:08

标签: php mysql

我有一些代码从数据库运行html代码,以便不必为我想要制作的每个页面创建一个新文件,问题是如果页面包含php代码它不会运行,并且我很确定你可以用eval做到这一点,但它有安全风险,所以我试图找到一些替代品。如有必要,我可以粘贴代码。我有一个PHP脚本从表中获取数据和一个主要的PHP脚本,它获取HTML和PHP格式的数据,但它只是运行PHP代码,就好像它是来自数据库的字符串。
这是一个意图从php脚本运行的代码图像:
http://i.imgur.com/qx0rn7q.png 这是该行中的php代码 enter image description here 这是运行它的主要脚本: enter image description here

2 个答案:

答案 0 :(得分:0)

为什么不制作PHP功能?例如,如果您想使用PHP从数据库中吐出数据,而不是使用大量代码,则可以执行类似...(对于用户配置文件)

喜欢,你可以制作一个funcs.php 然后在里面做:

function user_page($user_id){
    ?> [Create user page here] <?php
}

然后在任何其他文件内部执行:

include 'funcs.php';
if(isset($_GET['username']) === true){
    user_page($_GET['username']);
} else {
    //if not loading user page then do something else
}

修改

好的,我刚看到你的截图。 要做那样的事情,功能会很好。

前:

function print_data($info1,$info2,$info3,$info4){
echo("<center>$info1</center><br>$info2<br>$info3<br>$info4");
}

然后只需使用屏幕截图中的$ row []信息调用该函数。

像这样:

print_data($row['email'],$row['name'],$row['username'],$row['ip_addr']);

答案 1 :(得分:0)

这个问题必须加到一些人做错了#34;老实说,老实说。

但是,回到你的问题,你有3个选择,所有这些选择或多或少都是痛苦的,只有其中一个是正确的。

  • 做得对:重写你的引擎或采取一些cms /框架。将文本数据存储在数据库中,脚本/模板存储在磁盘上
  • EVAL! (你不想要的)
  • 解析。 (这将是非常艰难,缓慢和完全疯狂)