-1

我正在尝试为我自己的服务器制作类似http://writecodeonline.com/php/的东西。我无法使用该服务,因为我需要使用他们出于明显原因而未启用的 cURL。

这是我到目前为止的代码。

对于您输入要测试的代码的第一页。

<form method="post" action="process.php">
<textarea name="code" cols="40" rows="5"></textarea><br>
<input type="submit" value="Submit" />
</form>

并执行代码。

<?php
$result = eval($_POST['code']); 
echo $result;
?>

如果您尝试在此处使用它,您可以看到错误代码http://alexseyer.com/phptest.php

我知道这是一个安全禁忌,但无论如何我在服务器上没有任何价值。

4

2 回答 2

2

你可以试试下面的代码。用于get_magic_quotes_gpc()检查magic_quotes_gpc 是否开启。

if(!empty($_POST)){
    if(get_magic_quotes_gpc())
        echo eval_php(stripslashes($_POST['content']));
    else{
        echo eval_php($_POST['content']);
    }
}

function eval_php($content)
{
    ob_start();
    eval("?>$content<?php ");
    $output = ob_get_contents();
    ob_end_clean();
    return $output;
}
于 2012-07-04T06:50:05.417 回答
0

echo 123;作品

问题是引号将用反斜杠转义。看看php:addslashes ,你可以通过禁用magic_quotes选项来关闭它。

于 2012-07-04T06:49:12.883 回答