免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3092 | 回复: 12
打印 上一主题 下一主题

php从数据库里读出代码然后执行怎么实现? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-06-05 12:34 |只看该作者 |倒序浏览
很久以前看见过,一时找不到了
网页比较慢,想到的办法之一是把include文件放到heap表里面

论坛徽章:
0
2 [报告]
发表于 2005-06-05 13:38 |只看该作者

php从数据库里读出代码然后执行怎么实现?

能说明确一点吗

论坛徽章:
0
3 [报告]
发表于 2005-06-05 16:09 |只看该作者

php从数据库里读出代码然后执行怎么实现?

就是预先把代码存到数据库里面,需要运行它的时候再读出来
别的好说, 问题是读出来怎么插到脚本里面

论坛徽章:
0
4 [报告]
发表于 2005-06-05 16:34 |只看该作者

php从数据库里读出代码然后执行怎么实现?

不知道你想干什么

论坛徽章:
0
5 [报告]
发表于 2005-06-05 20:18 |只看该作者

php从数据库里读出代码然后执行怎么实现?

原帖由 "CBD5C0CFCAA6" 发表:
就是预先把代码存到数据库里面,需要运行它的时候再读出来
别的好说, 问题是读出来怎么插到脚本里面


估计你的意思是这样:
echo "从数据库读出的代码";

论坛徽章:
0
6 [报告]
发表于 2005-06-05 22:15 |只看该作者

php从数据库里读出代码然后执行怎么实现?

如果怎么也不明白也罢了
在这种专业论坛里面, 调侃很酷吗?

论坛徽章:
0
7 [报告]
发表于 2005-06-05 22:47 |只看该作者

php从数据库里读出代码然后执行怎么实现?

按照我的理解。楼主的意思是
比如我在数据库里保存 <?php print "Hallo"; ?>;
我们可以通过访问数据库,把它显示出从来,但是不能执行。

我所能想到的办法
如果有写权限,可以把它写入一个文件里,然后再include进来

论坛徽章:
0
8 [报告]
发表于 2005-06-06 05:34 |只看该作者

php从数据库里读出代码然后执行怎么实现?

Folow is my test. You can try it for yourself.

  1. <?php
  2. $str = "<?php ";
  3. $str .= "echo \"hello 0<br/>;\";";
  4. $str .= "echo \"hello 1<br>;\";";
  5. $str .= "echo \"hello 2<br>;\";";
  6. $str .= "echo \"hello 3<br>;\";";
  7. $str .= "echo \"hello 4<br>;\";";
  8. $str .= "echo \"hello 5<br>;\";";
  9. $str .= " ?>;";
  10. $std = shell_exec("echo '$str' | php");
  11. echo substr($std,49);
  12. ?>;

  13. Outpu:

  14. hello 0
  15. hello 1
  16. hello 2
  17. hello 3
  18. hello 4
  19. hello 5
复制代码

论坛徽章:
0
9 [报告]
发表于 2005-06-06 08:31 |只看该作者

php从数据库里读出代码然后执行怎么实现?

原帖由 "CBD5C0CFCAA6" 发表:
如果怎么也不明白也罢了
在这种专业论坛里面, 调侃很酷吗?


其实你写的东西就是很难让人明白,根本就不知道你要干什么,回答你的问题的人也是猜测你的意思去回答,可能答非所问。

论坛徽章:
0
10 [报告]
发表于 2005-06-06 09:09 |只看该作者

php从数据库里读出代码然后执行怎么实现?

eval
(PHP 3, PHP 4 )

eval -- Evaluate a string as PHP code
Description
mixed eval ( string code_str)


eval() evaluates the string given in code_str as PHP code. Among other things, this can be useful for storing code in a database text field for later execution.

There are some factors to keep in mind when using eval(). Remember that the string passed must be valid PHP code, including things like terminating statements with a semicolon so the parser doesn't die on the line after the eval(), and properly escaping things in code_str.

Also remember that variables given values under eval() will retain these values in the main script afterwards.

A return statement will terminate the evaluation of the string immediately. In PHP 4, eval() returns NULL unless return is called in the evaluated code, in which case the value passed to return is returned. In PHP 3, eval() does not return a value.

例子 1. eval() example - simple text merge

<?php
$string = 'cup';
$name = 'coffee';
$str = 'This is a $string with my $name in it.';
echo $str. "\n";
eval("\$str = \"$str\";";
echo $str. "\n";
?>;  

The above example will show:

This is a $string with my $name in it.
This is a cup with my coffee in it.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP