我試圖去加載頁面,然後執行powershell腳本。但不幸的是,我無法得到這個工作。當我進入頁面時,它會自動轉到腳本並將我重定向到失敗頁面的成功。 我試圖在重定向後進行睡眠,但它只是等待幾秒鐘,然後運行腳本並將我重定向到html頁面。重定向然後執行
header('Location: /loading.html');
include ("file\where\the\variable\comes\from.php");
$s = shell_exec("powershell path\\to\\script.ps1 '$variable'< NUL");
if (strpos($s, 'True') === false) {
header('Location: /succes.html');
}
else{
header('Location: /failed.html');
}
你錯過了'出口();'。你的腳本在你的第一個'header()函數中死掉了,因爲它感覺需要重定向,但由於未知的結束而無法繼續。你包含()'或'require_once()'你的加載頁面,然後在每個'header()'方法之後添加一個'exit();'。 [看看它應該在這裏](https://3v4l.org/sh7J3) – KDOT
爲什麼你首先使用重定向,並且只有在呼叫shell腳本的重定向之後? 據我所知,這裏發生的是: 1.服務器發送重定向頭到瀏覽器。 (代碼中的第一行) 2.瀏覽器要求加載.html 3.服務器將loading.html發送給瀏覽器 該腳本的其餘部分將保持未執行狀態。 – Dragos