2015-09-12 80 views
-1

我有php網站。限制訪問兩個設備

我如何限制用戶只能用2個設備登錄網站。

所以,如果用戶嘗試登錄與其他這些2設備,他們不能!

+0

從相同的用戶名/ userId計算會話,在發現2激活後阻止登錄。 –

+0

謝謝,但我的問題不是在同一時間訪問,我的意思是用戶不能只從一臺筆記本電腦和智能手機登錄,例如他不能登錄,如果他嘗試從其他這兩個設備。 –

回答

1

將這些設備的IP地址存儲在數據庫中,並在登錄時檢查用戶是否從該註冊設備訪問。您可以在PHP中使用此代碼獲取客戶端的IP。代碼:

$ip = $_SERVER['HTTP_CLIENT_IP']; 

請按照下列步驟操作:1. 創建一個頁面來註冊的設備。 2.從您想要通過的設備訪問該頁面。 3.註冊這些設備的IP地址並將其存儲到數據庫中。 4.最後從主站點登錄時檢查設備IP是否在列表中。

當然隱藏該頁面進行註冊或者僅僅爲了安全目的而刪除該頁面。

在同一個網絡上的IP會發生衝突。在這種情況下,您可以使用系統MAC地址來解決衝突。在php中查找MAC地址的代碼是..

<?php 
ob_start(); 
//Get the ipconfig details using system command 
system('ipconfig /all'); 

// Capture the output into a variable 
$mycom=ob_get_contents(); 
// Clean (erase) the output buffer 
ob_clean(); 

$findme = "Physical"; 
//Search the "Physical" | Find the position of Physical text 
$pmac = strpos($mycom, $findme); 

// Get Physical Address 
$mac=substr($mycom,($pmac+36),17); 
//Display Mac Address 
echo $mac; 
?> 
+0

非常感謝。 –

+0

但是如果用戶在同一網絡中使用多臺設備,我認爲所有設備的IP地址都是相同的? –

+0

讓我知道這是否有效。 –