Php 通过电子邮件发送navigator.useragent

Php 通过电子邮件发送navigator.useragent,php,javascript,html,user-agent,Php,Javascript,Html,User Agent,是否有一种方法可以允许用户在点击按钮(提交表单时)时通过电子邮件将其用户代理发送给我 因此,以某种方式将devices navigator.useragent传递给php表单以发送它,这可能吗?用户代理在superglobal中可用。不过要小心,它的价值很容易被欺骗 在JavaScript中,该值在字符串中可用。但是,由于该值在服务器端已经存在,我建议改为$\u server['HTTP\u USER\u AGENT']。用户代理在superglobal中可用。不过要小心,它的价值很容易被欺骗

是否有一种方法可以允许用户在点击按钮(提交表单时)时通过电子邮件将其用户代理发送给我


因此,以某种方式将devices navigator.useragent传递给php表单以发送它,这可能吗?

用户代理在superglobal中可用。不过要小心,它的价值很容易被欺骗


在JavaScript中,该值在字符串中可用。但是,由于该值在服务器端已经存在,我建议改为
$\u server['HTTP\u USER\u AGENT']

用户代理在superglobal中可用。不过要小心,它的价值很容易被欺骗


在JavaScript中,该值在字符串中可用。但是,由于该值在服务器端已经存在,我建议改为
$\u server['HTTP\u USER\u AGENT']

当然。您可以创建输入(仅隐藏文本)并从javascript将navigator.useragent分配给其值。

当然可以。您可以创建输入(隐藏的o just text)并从javascript中将navigator.useragent分配给它的值。

您必须使用javascript来访问此信息。您可以创建隐藏的表单输入,并在加载或提交时设置其值。

您必须使用javascript来访问此信息。您可以创建隐藏的表单输入,并在加载或提交时设置其值。

将其添加到表单中:

<input type='hidden' name='user-agent' value='<?php echo $_SERVER['HTTP_USER_AGENT']; ?>' />
将此项添加到表单中:

<input type='hidden' name='user-agent' value='<?php echo $_SERVER['HTTP_USER_AGENT']; ?>' />


是的,谢谢。无论如何,这都是为了让用户受益,所以如果他们能够“欺骗”这个过程,我怀疑他们会这么做。我发现许多安卓平板电脑认为它们是Macintosh PC和iPad,如果这就是你所说的欺骗的意思,那没关系:)@JohnVasiliou,那没关系。不要像其他人建议的那样在隐藏的输入字段中添加该值,因为该值在每次请求时都可用。如果将该值添加到隐藏的输入字段,则欺骗的可能性会增加。@JohnVasiliou我假定您的表单提交是由您自己的服务器处理的。在这种情况下,直接使用
$\u SERVER['HTTP\u USER\u AGENT']
而不是
$\u POST['USER-AGENT']
。当表单提交到您无法控制的位置时,您当前的方法很好(尽管我会使用
hidden
而不是
submit
)。将输入类型更改为“submit”将导致其中断。输入类型需要“隐藏”。欺骗不是你应该考虑的事情,不管发生什么,它都是非常容易的,你也无法阻止它。是的,谢谢。无论如何,这都是为了让用户受益,所以如果他们能够“欺骗”这个过程,我怀疑他们会这么做。我发现许多安卓平板电脑认为它们是Macintosh PC和iPad,如果这就是你所说的欺骗的意思,那没关系:)@JohnVasiliou,那没关系。不要像其他人建议的那样在隐藏的输入字段中添加该值,因为该值在每次请求时都可用。如果将该值添加到隐藏的输入字段,则欺骗的可能性会增加。@JohnVasiliou我假定您的表单提交是由您自己的服务器处理的。在这种情况下,直接使用
$\u SERVER['HTTP\u USER\u AGENT']
而不是
$\u POST['USER-AGENT']
。当表单提交到您无法控制的位置时,您当前的方法很好(尽管我会使用
hidden
而不是
submit
)。将输入类型更改为“submit”将导致其中断。输入类型需要“隐藏”。欺骗不是你应该考虑的事情,不管发生什么事情,它都是非常容易的,而且你也无法阻止它。那么我该如何着手让它工作呢?我有一个html表单,它使用php验证并将结果发送给我。除了这个表单,我还想包括设备用户代理。有什么想法吗?最简单的解决方案是@jchavannes提出的解决方案。这将不需要javascript,并为您预填充字段。一旦提交,你可以对它做任何你想做的事情。因此,如果我有一个像往常一样提交的当前表单,@jchavannes需要一个全新表单的代码,我的当前表单以input type=“submit”结尾,而这个表单是不同的。如果你将它添加到现有表单中,则不会。此外,您只需从处理post数据的页面向电子邮件添加
$\u SERVER['HTTP\u USER\u AGENT']
,而无需添加新的表单字段。PHP对您的解决方案一无所知。一个新的隐藏表单字段,由javascript填充(screen.width和screen.height)。我想问一个新问题以获得更深入的答案。那么我该如何着手使这项工作成功呢?我有一个html表单,它使用php验证并将结果发送给我。除了这个表单,我还想包括设备用户代理。有什么想法吗?最简单的解决方案是@jchavannes提出的解决方案。这将不需要javascript,并为您预填充字段。一旦提交,你可以对它做任何你想做的事情。因此,如果我有一个像往常一样提交的当前表单,@jchavannes需要一个全新表单的代码,我的当前表单以input type=“submit”结尾,而这个表单是不同的。如果你将它添加到现有表单中,则不会。此外,您只需从处理post数据的页面向电子邮件添加
$\u SERVER['HTTP\u USER\u AGENT']
,而无需添加新的表单字段。PHP对您的解决方案一无所知。一个新的隐藏表单字段,由javascript填充(screen.width和screen.height)。我想问一个新问题以获得更深入的答案。那么我该如何着手使这项工作成功呢?我有一个html表单,它使用php验证并将结果发送给我。除了这个表单,我还想包括设备用户代理。有什么想法吗?或者你可以使用
$\u服务器['HTTP\u用户\u代理]
。不需要表格。那我怎样才能开始工作呢?我有一个html表单,它使用php验证并将结果发送给我。除了这个表单,我还想包括设备用户代理。有什么想法吗?或者你可以