2013-02-01 95 views
1

只使用PHP,反正是有,如果頁面正在從一個特定的設備裝載到檢測?說,我希望頁面的反應不同,如果只有我的iPhone加載頁面,沒有其他人的?獲取特定設備信息

我到目前爲止唯一的解決辦法是在$ _SERVER結合[「HTTP_USER_AGENT」],以驗證iPhone使用$ _ SERVER [「REMOTE_PORT」,但並不保證特定 iPhone ..

+0

'$ _SERVER ['REMOTE_PORT']'不提供有關設備的任何信息。這只是一個(或多或少是隨機的)數字。 – axiac

回答

0

僅限於該設備發送此類信息。

您可以使用cookie - 有一個設置頁面,需要才能登錄,然後將cookie發送到設備。從此之後,您的設備將會將cookie發送到其他頁面,而無需再次登錄。

默認情況下,設備不發送序列號或特異性鑑定的設備,可能是因爲這將打破一些隱私規則的任何其他手段。

+0

Argh - 我需要一個QR碼閱讀器去某個PHP會話頁面,但只能從某個電話 - 否則任何人都可以掃描QR碼然後登錄。我需要限制它。到目前爲止唯一真正的解決方案是讓某人開發一個應用程序來完成它 - 這將花費1500英鎊。 :( – Chud37

2

$_SERVER['HTTP_USER_AGENT']包含關於瀏覽器和所用的設備的信息。所以,如果你知道用戶代理 - 由你的設備發送 - 那麼你可以很容易地寫一個if語句,這將看看它是否是你想要的。

但是,通常你真的不希望與手動瞄準設備播放,尤其是當它涉及到手機。考慮使用類似wurfl的類,它允許您確定加載網頁的設備類型。

如果你想針對特定的iPhone你最有可能想比較它的用戶代理與其他模型的用戶代理。但據我所知 - 這是一個非常有缺陷的方法,並沒有真正長期的工作。很長時間回答簡短:沒有辦法針對一個特定的iPhone模型(因爲如果它們都具有相同的iOS和相同的瀏覽器,它們中的任何一個都會向服務器發送大致相同的數據)。

1

通過使用Mobile_Detect PHP類,你可以檢測到您的移動設備。它使用用戶代理字符串與特定的HTTP頭結合來檢測移動環境。