2015-10-09 56 views
1

我試圖在用戶重定向到登錄重定向時打印警報,但是警報未按我的意願工作,而是將用戶直接帶入登錄重定向。JavaScript警報未在PHP中運行

這裏是我的代碼:

<script type="text/javascript"src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> 
<?php 
session_start(); 

if(!isset($_SESSION["loginSuccess"])){ 
    echo "<script type='text/javascript'>alert('Login failed!');</script>"; 
    header('Location:' . $base_url . 'login-redirect'); 
} 
?> 
+2

可能的[如何修復]已經發送的頭文件「PHP中的錯誤」的副本(http://stackoverflow.com/questions/8028957/how-to-fix-headers-already-sent-error-in-php) – Epodax

+0

在輸出頁面上的內容之前,您必須先放置'session_start();'。因此,在輸出'html'像jquery腳本標記之前放置'session_start();'。 –

+1

*「JavaScript警告不在PHP中運行」*哎!那是一種解脫。 :-) –

回答

1

這就是它的工作原理。你正在做重定向,但它不會在重定向之前運行js。如果您想運行js,那麼您需要使用元標記或JavaScript來完成不同的重定向,而不是使用http標頭。

+0

感謝您的解釋!它現在正在工作 – zana

0

警報工作。

我想你的會話變量沒有設置。