0

我正在尝试制作一个简单的输入表单来更改配置文件中的密码。我相信我已经很接近了,但是在尝试了一个小时以使 exec 行低于正确之后,我相信我需要一些帮助。

# password in conf file
# $password = '12345';


<?php 
if(isset($_REQUEST['new_pass'])){
    exec('sed -i '.escapeshellarg('s/\$password=.*/\$password=\'".$_REQUEST['new_pass'].'\'/g')." include/conf.php");
    echo 'password changed';
}
?>

<form method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    <input type="text" name="new_pass" maxlength="59">
    <input type="submit" name="Submit" value="Submit" />
</form>

我相当肯定是 ' 引语让我感到困惑。

4

1 回答 1

1

如有疑问,请查看语法突出显示。

exec('sed -i ' . escapeshellarg('s/\$password=.*/\$password=\''.$_REQUEST['new_pass'].'\'/g')." include/conf.php");
于 2013-08-09T18:52:19.053 回答