2017-08-02 43 views
0

我想知道是否可以在後臺PHP腳本完成後重定向特定的會話。PHP - 完成流程後重定向PHP

header("location: index.php"); 

$myboxes = $_POST['myCheckbox']; 

error_log("location:index.php"); 

if(empty($myboxes)) 
{ 
    error_log("You didn't select any boxes."); 
    } 
    else 
    { 
    $i = count($myboxes); 
    error_log("You selected $i box(es): "); 
    for($j = 0; $j < $i; $j++) 
    { 
     error_log($myboxes[$j] . " "); 
    } 
    header("location: sucess.php"); 
    } 

是否有可能重定向/刷新某人後,我已經重定向他(並等待後臺進程完成運行)。

非常感謝

回答

0

我的建議是上運行的index.php的腳本,然後您可以顯示文本或從那裏做一個單一的重定向。

要直接回答你的問題,不可以兩次發送標題。 如果您還沒有明確告訴PHP發送初始頭它會等到執行完畢,並把最新的標題,例如:

header("Location: initialPage.php"); 
sleep(2); 
header("Location: secondPage.php"); 

將等待2秒鐘,然後將用戶重定向到「secondPage.php 「

另外,您可以強制PHP沖洗像這樣的輸出發送標題:

header("Location: initialPage.php"); 

flush(); 
ob_flush(); 

sleep(2); 

header("Location: secondPage.php"); 

然後用戶會被重定向到initialPage.php直線距離,它會忽略第二重定向

結論:不,您不能通過發送2個標頭來獲得您想要的效果。