我只是在離開大約7年後回到PHP,所以非常生鏽。我如何計算用戶在PHP中連續登錄的次數
我想添加一個功能到我的網站,從而它每天跟蹤用戶登錄,然後在網站上直觀地打印登錄。我希望它記錄連續登錄,並且當用戶錯過一天時,將該值返回到零。
任何幫助將不勝感激!
乾杯!
我只是在離開大約7年後回到PHP,所以非常生鏽。我如何計算用戶在PHP中連續登錄的次數
我想添加一個功能到我的網站,從而它每天跟蹤用戶登錄,然後在網站上直觀地打印登錄。我希望它記錄連續登錄,並且當用戶錯過一天時,將該值返回到零。
任何幫助將不勝感激!
乾杯!
您應該在用戶表中添加consecutiveDayCounter
和lastDayConnected
行。
在你的SELECT
查詢來檢查用戶和密碼是否匹配,你也應該選擇這些行。 驗證是否lastDayConnected ==比昨天的時間戳。
然後,對lastDayConnected
進行UPDATE
查詢,查詢當天時間戳,如果檢查lastDayConnected ==昨天的時間戳,則將+1加到consecutiveDayCounter
。如果不是,它更新到0.1
編輯:
至於問,這裏的一些示例代碼來取得今天 - 昨天郵票:
<?php
// Today
$today = new DateTime(); // Create new date object (today date)
echo $today->format('Y-m-d'); // Format the date 'YYYY-MM-DD'
// Yesterday
$yesterday = new DateTime(); // Create new date object (today date)
$yesterday->sub(new DateInterval('P1D')); // Substract 1 day to it
echo $yesterday->format('Y-m-d'); //Format the date 'YYYY-MM-DD'
?>
謝謝!不知道如何正確使用時間戳,請給我一些示例代碼嗎? –
@AidenTaylor當然,我編輯我的帖子的一些示例代碼來獲取時間戳 – SamyQc
非常感謝@SamyQc,我真的很感激它:) –
請記住(例如,在數據庫中)登錄嘗試次數和上次登錄嘗試的時間。
如果上次登錄嘗試的日期是今天,請使用數據庫中的計數。否則,請考慮計數爲零。
一旦用戶登錄,請記住時間並將1添加到所述計算的計數。
你需要什麼樣的幫助? – Federkun
這個問題太寬泛,無法在話題上 –