如何在shell中传递一个php变量,然后在我的html页面上返回值?

如何在shell中传递一个php变量,然后在我的html页面上返回值?,php,html,bash,Php,Html,Bash,如何在shell中传递一个php变量,然后在我的html页面上返回值 以下是我的代码,它不会在我的html页面中返回任何内容: 我的bash脚本: #!/bin/bash echo "Hello $UserName" 我的html与php: <!DOCTYPE html> <html lang="fr"> <head> <meta charset="utf-8"> <title>Project</title>

如何在shell中传递一个php变量,然后在我的html页面上返回值

以下是我的代码,它不会在我的html页面中返回任何内容:

我的bash脚本:

#!/bin/bash
echo "Hello $UserName"
我的html与php:

<!DOCTYPE html>
<html lang="fr">
<head>
  <meta charset="utf-8">
  <title>Project</title>
  <style>

  </style>
</head>
<body>
    <?php
     if(isset($_POST['submit']))
     {
       $UserName = $_POST['UserName'];
       $output = shell_exec("script.sh $UserName");
       echo $output; //doesn’t work
    }
    ?>


    <form action="" method="post">
    <input type = "text" name = "UserName" >
    <input type = "submit" name="submit" value="Launch">
    </form>

</body>
</html>

项目

将参数传递给shell脚本时,需要像访问
“$1”
“$2”
等一样访问它们

因此,您的shell脚本应该是:

#!/bin/bash
echo "Hello $1"
除此之外,为了避免注射,你应该避免争论:

$output = shell_exec("script.sh " . escapeshellarg($UserName));

还要注意的是,
shell\u exec()
并没有为您排除故障提供太多帮助。您可能想改用。

当您将参数传递给shell脚本时,您需要像
“$1”
“$2”
等那样访问它们

因此,您的shell脚本应该是:

#!/bin/bash
echo "Hello $1"
除此之外,为了避免注射,你应该避免争论:

$output = shell_exec("script.sh " . escapeshellarg($UserName));

还要注意的是,
shell\u exec()
并没有为您排除故障提供太多帮助。您可能想改用。

不起作用吗?或者只返回
Hello
?在bash中,您将使用
$1
而不是
$UserName
,而且您的代码对用户开放。不起作用吗?或者只返回
Hello
?在bash中,您将使用
$1
而不是
$UserName
,而且您的代码对用户开放。