if_POST然后执行命令或命令

时间:2015-01-31 08:43:35

标签: php html linux post command

我不擅长PHP / HTML页面。 但是我想编写允许我这样做的脚本:

如果我在框中键入了某些内容,则PHP / HTML文件执行Linux命令,例如:

 <form method='POST' name='name'><table width='100%' height='107' border='0'  id='Box'><tr>
      <td><input name='firstname' size='50' id="firstname" />
      </select></td>
    </tr>
    <tr>
      <td height='26' colspan='2'><input type='submit' value='DO' name='DO' id="DO" /></td>
    </tr>
    </table>
    </form>
<?php
if($_POST)
{ 
    $n = $_POST['firstname']);

echo exec(  command );
}
?>

我想执行此命令

sshpass -p 'password' ssh -f   127.0.0.1 -l root -o StrictHostKeyChecking=no "./file.py  firstname  "

2 个答案:

答案 0 :(得分:0)

如果你想在编写的同时运行命令,你应该使用JavaScript,但是如果你想在按下提交按钮(名为DO)之后运行命令,你应该把你的php代码在一个不同的文件中,我们称之为runCommand.php,然后在你的表单标签中添加属性动作,如下所示:

form action='runCommand.php' 

与其他属性一起。

答案 1 :(得分:0)

if (isset($_POST['firstname'])) {
  $command = "sshpass -p 'password' ssh -f   127.0.0.1 -l root -o StrictHostKeyChecking=no " . '"./file.py  ' . $_POST['firstname'] . '"';
  exec($command);
}

出于安全原因,我建议检查$_POST['firstname']的内容,但我想你已经意识到了这一点。 ;)