有沒有一種方法,我可以允許用戶給我發電子郵件的用戶代理一個按鈕,點擊(提交表單時)通過電子郵件發送的navigator.userAgent
所以不知何故設備的navigator.userAgent傳遞到PHP形式發送它,這可能嗎?
有沒有一種方法,我可以允許用戶給我發電子郵件的用戶代理一個按鈕,點擊(提交表單時)通過電子郵件發送的navigator.userAgent
所以不知何故設備的navigator.userAgent傳遞到PHP形式發送它,這可能嗎?
添加到您的形式:
<input type='hidden' name='user-agent' value='<?php echo $_SERVER['HTTP_USER_AGENT']; ?>' />
用戶代理在$_SERVER['HTTP_USER_AGENT']
超全球範圍內可用。當心,但它的價值可以容易被欺騙。
在JavaScript中,該值在navigator.userAgent
字符串中可用。但是,由於該值已經存在於服務器端,因此我建議使用$_SERVER['HTTP_USER_AGENT']
。
是的感謝。無論如何,這是爲了讓用戶受益,所以如果他們能夠「欺騙」這個過程,我懷疑他們會這樣做。我發現很多Android平板電腦認爲它們是Macintosh PC和iPad,如果這就是你所說的欺騙性的話,那麼這很好:) – 2012-03-14 16:12:55
@JohnVasiliou然後就可以了。按照其他人的建議,不要在隱藏的輸入字段中添加該值,因爲該值可在每個請求中使用。如果將該值添加到隱藏的輸入字段,欺騙的可能性會增加。 – 2012-03-14 16:16:17
'/><那會更好嗎? – 2012-03-14 16:17:50
當然。你可以創建輸入(隱藏的只是文本),並將它的值從JavaScript分配navigator.useragent。
那我該怎麼去做這項工作呢?我有一個使用PHP來驗證並將結果發送給我的html表單。以及這個表單我想包括設備用戶代理。有任何想法嗎? – 2012-03-14 16:15:01
或者您可以使用'$ _SERVER ['HTTP_USER_AGENT']'。不需要表格。 – ThiefMaster 2012-03-14 16:15:32
是的,只是從PHP閱讀更好。 – kirilloid 2012-03-14 16:18:13
您必須使用javascript才能訪問此信息。您可以創建隱藏表單輸入並在加載或提交時設置其值。
我該如何去做這項工作呢?我有一個使用PHP來驗證並將結果發送給我的html表單。以及這個表單我想包括設備用戶代理。有任何想法嗎? – 2012-03-14 16:14:53
最簡單的解決方案將是@jchavannes提出的解決方案。這將不需要javascript併爲您預填充該字段。提交後,您可以隨心所欲地做任何事情。 – Crashspeeder 2012-03-14 16:17:01
所以如果我有一個像往常一樣提交的當前表單,那麼@jchavannes將需要一個完全新的表單,我的當前表單以輸入類型=「submit」結束,而這個表單是不同的。 – 2012-03-14 16:20:05
爲什麼不只是在發送電子郵件的PHP文件中使用變量?無需提交。 – ThiefMaster 2012-03-14 16:15:21
非常感謝你,我會嘗試並報告回來:) – 2012-03-14 16:15:27
@ThiefMaster這就是我想要的。我希望能夠將它添加到我的常規表單中,而不是創建一個全新的表單,但如果這是我唯一的選擇,那麼就這樣做吧。 – 2012-03-14 16:16:31