2011-06-30 55 views
-1

我正在開發預構建的基於php的系統。無法保存cookie或使用數據庫,只需要顯示一次消息

對於我無法解釋的束縛,我無法使用任何cookie,會話或數據庫鏈接。

我只需要一次顯示一條消息,每一個進來的客人。

任何創造性的想法,你們能想到的?

感謝,

+2

所以你基本上想要能夠保存一個狀態而不能保存狀態? –

+1

解釋這些原因。他們可能會排除大部分(比你已經列出的更可靠)替代品。 – Quentin

+0

這與創造力無關,這與不可能性有關。 –

回答

1

這裏有一些想法

  1. 使用瀏覽器的localStorage的
  2. 合格後使用或查詢字符串的消息。不安全的選項
  3. 使用閃存。與#1相同,但不需要閃光燈!
  4. 使用文件磁盤,但你需要能夠記住誰擁有該文件,因爲多個人將在同一臺服務器上。沒有使用cookies,我不知道如何做到這一點。

我個人喜歡使用localStorage。第一頁會創建一些JavaScript,它在瀏覽器的存儲器上存儲消息,然後第二個請求會提取該消息並顯示它。

0

雖然你的約束有點好奇,我想你可以在你的$_GET增加一個值。

如果訪問者訪問www.yoursite.com/,他們會看到您的消息,該頁面上顯示的所有鏈接均包含$_GET var'displayed'或您想要命名的名稱。所以鏈接就會像www.yoursite.com/page.html?displayed=1

然後你檢查

if (isset($_GET["displayed"])) 
// don't display message 
else 
// display message 

不是一個非常「好」的方法,但它的工作。

0

如何使用IP跟蹤和平面文件或csv。類似的東西只會在每個IP上顯示一次。

+1

但是如果用戶在路由器後面呢。大多數大學都是一個IP地址。 –

0

您可以強制PHP使用auto_prepend_file .ini選項預先部署您自己的PHP代碼,包括session_start()調用。

這可以確保您預先安裝的任何文件都是每個腳本中執行的第一件事。

在此之後,您將獲得一個會話(甚至只是一個cookie),您可以在其中存儲標誌以在隨後的訪問中隱藏該消息。

+0

如果他不能訪問db,cookies和php會話,那麼我懷疑他有權訪問ini或.htaccess文件。但我可能是錯的 –

相關問題