0
m停留在一個python腳本的web界面,問題是我需要讀取用戶的輸入,並將它們作爲參數值運行在python腳本上,但它不工作繼承人我的代碼python arg values from php
的index.php
<html>
<body>
<form action="programa.php" method="post">
Name: <input type="text" name="longitud"><br>
E-mail: <input type="text" name="angulo"><br>
<input type="submit" value="correr">
</form>
programa.php
<?php $longitud=$_POST["longitud"];
$angulo=$_POST["angulo"]; ?>
<h1>Corriendo programa con <?php echo $_POST["longitud"]; ?> mm de longitud<br>
y <?php echo $_POST["angulo"]; ?> grados de angulo</h1>
<br>
<br>
<br>
<?php
$a=exec('sudo python /var/www/python/programa.py $longitud $angulo');
echo $a;
?>
我參觀了錯誤日誌和印刷我這個
Traceback (most recent call last):
File "/var/www/python/programa.py", line 7, in <module>
script,long_barra,angulo = argv
ValueError: need more than 1 value to unpack
[Mon Nov 10 22:36:53 2014] [error] [client 192.168.1.3] PHP Notice: Undefined
index: longitud in /var/www/Maquina/programa.php on line 22
[Mon Nov 10 22:36:53 2014] [error] [client 192.168.1.3] PHP Notice: Undefined index:
angulo in /var/www/Maquina/programa.php on line 24
[Mon Nov 10 22:36:53 2014] [error] [client 192.168.1.3] PHP Notice: Undefined index:
longitud in /var/www/Maquina/programa.php on line 25
[Mon Nov 10 22:36:53 2014] [error] [client 192.168.1.3] PHP Notice: Undefined index:
angulo in /var/www/Maquina/programa.php on line 26
Traceback (most recent call last):
File "/var/www/python/programa.py", line 7, in <module>
script,long_barra,angulo = argv
ValueError: need more than 1 value to unpack
Traceback (most recent call last):
File "/var/www/python/programa.py", line 7, in <module>
script,long_barra,angulo = argv
ValueError: need more than 1 value to unpack
上programa.php腳本讀取後的值,而是犯規傳遞的argv到Python腳本,我怎麼能提前解決這個
TX
只是一個建議的基礎上,根據用戶輸入執行命令時,不要使用sudo一個Web界面,如果你用escapeshellarg()過濾。 – Jonnycake 2014-11-14 22:26:16