2013-05-28 150 views
0

你好StackOverFlow人。 :)保護公共PHP文件的密碼/熱鍵

我主要是寫散文,但因爲你們都在這裏忙,我會盡量讓問題變得簡單。我在PHP中不擅長,但我想對PHP文件提供保護。我知道我可以用其他方式使用.htaccess &%,但我需要保護一個特定的文件。有幾十年的PHP文件保護,但我需要的東西,它不會真正顯示有人有任何內容。我需要爲每個訪問者提供PHP文件,但是他們不能看到內容停留在那裏,除非他們會採取任何行動。我的意思是,如果有人訪問file.php文件,那麼只有一個白色的空白網頁出現,沒有標記,但如果人按下某些鍵,點擊某些內容,在頁面上停留一段時間,然後內容就會出現。

簡而言之:我有一個PHP文件,我需要在網頁中隱藏,但是通過一些特定的操作,代碼將被觸發它的用戶看到,並且PHP文件適合所有人使用。

我真的很感激,如果有人能給我至少任何提示尋找。夏天開始時,我將深入學習PHP。 :)

+0

使用JavaScript在頁面的開頭使用if/else語句使「action」和AJAX「提交請求」能夠完成這項工作。 – HamZa

+0

你需要的是一個'if(isset($ _ SESSION ['session_name'])){...} else {...}'種類的東西。 –

+0

...與一批新鮮的「餅乾」混合在一起。 –

回答

1

這可以使用JavaScript實現,然而,這是不這樣做安全的方式,因爲每個人都可以簡單地按CTRL + U。

如果想要做的正是這一點我會建議使用的WebSockets /的NodeJS + Socket.IO。你可以得到連接打開後的時間,使用NodeJS發送按鍵等等,特別是套接字。你可以在Nodejs.org上閱讀更多內容。

你爲什麼試圖做這樣的事情?也許我們會幫助你找到更好的方式去做你想做的事。

編輯:由於作者寫道:「'密碼'的重點並不在於保護內容,而是將其從一個意外到達的訪客的裸眼中隱藏起來,它不需要任何這種保護在所有「

純JavaScript的解決方案:

$(document).keypress(function(event) { 
    if (event.which == 13) { 
    $("#element").show(); 
    } 

});

,並創建HTML一個div:

<div id="element" style="display: none;">HIDDEN CONTEST YOYOYOYOYOY </div> 

您需要包括jQuery的。

+0

哇,從使用一個PHP文件到使用Node + Socket.IO對於簡單的事情來說是一個巨大的步驟。 –

+0

嗯,沒錯,但如果他真的想要這樣做,這將是最安全的方法。創建使用用戶名/密碼保護的新文件有什麼問題。 – Deepsy

+0

最安全的方式是什麼?使用原生Javascript?只是想知道...... –

-1

這不是你可以用PHP做的事情,因爲你不能在PHP中偵聽任何事件(除非用戶點擊某個[頁面上的元素]是可以接受的)。

也許一個可接受的解決方案是讓用戶能夠看到該頁面,如果密碼參數設置爲正確的URL在url?

if(isset($_GET['password'])) { 
     if($_GET['password'] == 'mypassword') { 
       echo "Lucky one!"; 
     } 
} 

這樣,只有當用戶有file.php?密碼=輸入mypassword訪問該文件,她將實際看到的內容。

+0

...或'$ _POST' ;-)歡呼 –

+0

@Fred,那麼您將需要一個表單(不是真的*需要*一個表單,但在某處發送郵件),並且您不能在頁面上有表單如果頁面應該是空白的;) –

+0

確實,這取決於OP想要實現他/她的目標的方式/方式。 –