2013-04-01 17 views

回答

0

商店,商店,商店。當某人通過會話登錄時,可以點擊/評論...然後將該人員的ID存儲在特定的行中,您可以將IPUSER Agent一起存儲在數據庫中,然後就像獲取該行一樣容易,並搜索用戶的id以檢查他/她是否已經喜歡。

只是一個例證..

if($_POST['check']) { 

$like = $_POST['like']; 
$ip = $_SERVER['REMOTE_ADDR']; 
$browser = $_SERVER['HTTP_USER_AGENT']; 

//mysql_query goes here 

} 
+0

$ _SESSION ['id'] \t \t = $ q; $ _SESSION ['ip_address'] \t = $ _SERVER ['REMOTE_ADDR']; $ _SESSION ['user_agent'] \t = $ _SERVER ['HTTP_USER_AGENT']; $ _SESSION ['last_access'] \t = time(); – Thefirstkilla

+0

那麼使用我上面發佈的內容並存儲在數據庫中?這是有道理的 – Thefirstkilla

+0

@Thefirstkilla是的,它的確如此。除了'time()',因爲如果你要存儲ip和瀏覽器,那麼時間就沒有用了。 – 2013-04-01 02:09:43

1

我還沒有做過任何的這個在很長一段時間,但我相信有某種禁用按鈕一次點擊的方式,也許是使用JS

幫助 http://forums.asp.net/t/1235703.aspx/1
+0

希望很直截了當:) – user2011985

+0

謝謝,但我需要一個持續時間比一天更長,所以我相信PHP Noob是在正確的軌道上。他的回答將允許我檢查該人是否已經點擊了按鈕。 – Thefirstkilla

1

最好把它當作一個冪等操作和一個cookie緩存結合起來,這個緩存保留了一些事情已經被「喜歡」的事實。

喜歡的東西是說,「確保這個用戶喜歡這個東西」的操作。

當他們點擊按鈕後,用JS將它關閉,然後將AJAX分發到服務器,然後將其存儲在存儲一組喜歡的對象的cookie中。如果頁面被刷新,請不要使其可點擊,除非Cookie中缺少類似的「喜歡」SQL表。 (所以你有支持從服務器端和客戶端鎖定它)。

不要忘記在客戶端Cookie中無效緩存的喜歡,如果它不與支持存儲「真相」排隊。

這應該是一個足夠複雜的方式去解決它。

相關問題