2011-06-23 72 views
1

在一個HTML頁面:如何在用戶未登錄時生成彈出窗口?

<a href="/files/getfile.php?name=abc.zip">file download</a> 

在PHP腳本(getfile.php):

if('notlogged') 
{ 
    echo 'please, loggin~'; //pop up, possible? 
    return false; 
} 

所以我的問題是,當用戶點擊錨標記,我可以彈出一個登錄窗口,如果用戶沒有登錄?

我知道我可以在調用PHP腳本之前預先檢查Javascript,無論用戶是否登錄。

但是,這不是我的使用情況; PHP腳本應該不得不拋出彈出代碼。

頁面用戶正在查看不應該更改 - 只需彈出登錄窗口。

+2

爲什麼動態地根據用戶的登錄狀態沒有不產生聯繫? –

+0

hm ...這是個好主意,但鏈接的數量不是一個。所以這有點複雜。 –

回答

3

PHP腳本在服務器站點上執行,因此當單擊鏈接時它不能生成彈出窗口。你可以實現你的目標的方式有兩種:

  1. 使用JavaScript來生成一個AJAX調用PHP腳本,並登錄窗口彈出必要。

  2. 在getfile.php中使用header(「Location:/your/login/script.php」)將用戶發送到登錄頁面,但沒有彈出窗口。

2

你可以試試這個:

<?php if(loggedin){?> 
    <a href="/files/getfile.php?name=abc.zip">file download</a> 
<?php 
} else { 
?> 
    <a href="javascript:;" onclick="popup();">file download</a> 
<?php } ?> 
+0

我覺得這是一個很棒的解決方案〜^^; –