2014-02-26 82 views
-3
<?php 
if(isset($_COOKIE['v_regUsr'])) 
{ 
header("Location: show.php"); 
} 
else 
{ 
header("Location: popup.php"); 
} 
?> 

,而不是我想它觸發彩盒頭,如何從PHP調用colorbox?

我知道這是錯的,但是這是我想要的工作

<?php 
if(isset($_COOKIE['v_regUsr'])) 
{ 
$.colorbox({width:"480px",height:"480px", inframe:true, href:"test.php"}); 
} 
else 
{ 
header("Location: popup.php"); 
} 
?> 

如果cookie是存在的,不顯示colorbox,如果cookie沒有顯示colorbox

謝謝!

+3

不能混合PHP代碼,這是在服務器端的混合與在瀏覽器中執行的JavaScript。 – ziollek

+0

這個問題似乎是無關緊要的,因爲它不可能以任何方式,形狀或形式出現,服務器端代碼不能與客戶端代碼混合使用。 – NDM

回答

1

你不能使用php和javascript動作,然後嘗試做一個標題(「Location:popup.php」),因爲標題函數必須在加載任何html之前運行,並且javascript必須在html中。你可以做的是重定向trhough這樣的javascript代碼應該看起來有點像這樣

<html> 
<head> 
</head> 
<body> 
<script> 
<?php 
    if(isset($_COOKIE['v_regUsr'])) 
    { 
    echo 'var cookie=true'; 
    } 
    else 
    { 
    echo 'var cookie=false'; 
    } 
?> 
$(document).ready(function(){ 
    if(!cookie){ 
     window.href=popup.php; 
    }else{ 
     $.colorbox({width:"480px",height:"480px", inframe:true, href:"test.php"}); 
    } 
}); 
</script> 
</body> 
</html> 

這不是最好的做法,但它應該工作