私はラズベリーパイにapacheサーバーを持っています。私は、ユーザーがHTMLフォームボックスに文字列を入力する基本的なプログラムを持っています。 submitをクリックすると、エントリがphpファイルに送信され、シェルスクリプトが呼び出され、そのエントリがプロンプトとして渡されます。以下のPHPを見ると、ユーザ入力の変数があり、シェルファイルmain.shを呼び出します。その変数を入力としてどのようにシェルプログラムを提供できますか?私はproc_openを見てきましたが、動作させることができませんでした。おかげで Index.htmlと:PHPはシェルスクリプトを実行し、プロンプトの入力を提供します
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form action="script.php" method="post" enctype="multipart/form-data">
Address: <input type="text" name="Address" value=""><br>
<input type="submit" value="Upload" name="submit">
</form>
</body>
</html>
script.php:
<?php
if(isset($_POST["submit"])) {
if($_POST['Address'] != "")
{
$entry = $_POST['Address'];
$output = shell_exec ("./main.sh");
echo $output;
}
}
?>
、最終的にはシェルファイル:main.sh:あなたは次のようにスクリプトをシェル変数を渡すことができ
echo -n "Do you like pie (y/n)? "
read answer
if echo "$answer" | grep -iq "^y" ;then
echo Yes
else
echo No
fi
[OK]を詳細については、この記事の
見て、私は後でそれをしようとします、おかげ – figbar
は、私はあなたが添付のリンクを見て、それが働いていた、私はちょうどその時私は私のPHPのVARエスケープシェル引数を作るのを忘れてこの方法を以前にテストしました。ありがとう、 – figbar