2017-02-09 154 views
1

從PHP運行連續Python腳本的重新加載頁面在執行

<?php 
 
    $time=$_GET[ 'time']; 
 
    $date=$_GET[ 'date']; 
 
    if($time !="" & $date !=""){ 
 
    $hour=s ubstr($time,0,2); 
 
    $minute=s ubstr($time,3,2); 
 
    $day=substr($date,8,2); 
 
    $month=substr($date,5,2); 
 
    $year=substr($date,0,4); 
 
    $execute=exec("python ..\alarm.py $year $month $day $hour $minute"); 
 
    } 
 
?> 
 

 

 
<form action="index.php" method="get"> 
 
    <input type='date' name='date'> 
 
    <input type='time' name='time'> 
 
    <input type='submit' value='setAlarm'> 
 
</form>

所以我工作的一些代碼,應該做到以下幾點:

  1. 點擊一個提交按鈕我index.php應執行一個存儲在服務器上的python腳本並提交表格的參數
  2. python腳本,它是一個持續不斷地執行警報的腳本(它將警報設置爲等待,直到執行它 - >所以它應該運行,直到警報完成)
  3. 從PHP腳本啓動python腳本後,應該重新加載index.php。

現在,它所有的工作沒有重新加載index.php。該文件正在執行,手動重新加載頁面後,index.php顯示所有正在運行的alarm.py腳本,這是我想要的。

那麼有沒有辦法,強制重新加載頁面,執行後從PHP開始?

回答

0

您可以使用 「&」 等結尾:

exec("python ..\alarm.py $year $month $day $hour $minute &"); 
+1

與添加 「>的/ dev/null的2>的/ dev/null的:」 我的exec命令的最後做到了。 – Eweren