在线急问!关于输入框内写入php代码并显示的问题.

cuiyang000 2009-08-11 02:44:52
各位大大,急问一个问题

比如我现在有个文本输入框(textarea),我想在里面输入一段php代码,就比如最简单的 <?php echo 'hello world';?>,通过递交表单后无论是存入数据库也好,还是用get的方式直接得到也行,现在我想要的就是能在页面上把这些代码显示出来.

就比如我上面写的那段,那么我想显示的就是 hello world

可是现在什么都不能显示,用火狐的查看页面源代码里能看到<?php echo 'hello world';?>,且是斜体的浅粉红色,不知道什么意思.

谢谢各位了!
...全文
57 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
cuiyang000 2009-08-11
谢谢楼上各位大大`刚才因为时间紧迫`我用了种别的方法解决了`

我的方法是textarea读出一个另外的.php文件的内容,用户修改后,直接修改该文件,打印的时候直接include那个php文件...囧...不过好歹是解决了`谢谢楼上的各位热心的朋友`我又学到新的了..呵呵.

结贴`
回复
duxins 2009-08-11

<?php
$content = preg_replace('/<\?php|\?>/','',stripslashes($_POST['content']));
if(!is_null($content)) {
eval ($content);
exit(0);
}
?>
<form method="post">
<textarea name="content"></textarea>
<input type="submit"/>
</form>
回复
Jearol 2009-08-11
PHP有个eval函数
<?
$a="1";
eval("\$b=\$a+1;");
echo $b;
?>
执行结果输出2
回复
fenyao 2009-08-11
是否很危险
回复
cuiyang000 2009-08-11
对对对,就是把输入的东西当作代码来执行,那么你的意思是我要先htmlentities()然后再html_entity_decode()吗?
回复
Jearol 2009-08-11
你的意思是想把输入的东西当作代码来执行吧?
你这么显示出来的其实是经过HemlEncode编码的“<?php echo 'hello world';?>”
回复
发动态
发帖子
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
社区公告
暂无公告