【发布时间】:2011-08-10 12:28:37
【问题描述】:
我对 PHP 还很陌生,所以请多多包涵。
我正在尝试为访问我网站的手机记录用户代理。我通过检查 $_SERVER['HTTP_USER_AGENT'] 值来做到这一点。
遇到了一个小问题,我注意到如果该人通过 opera mini 访问我的网站,那么 opera mini 会将实际用户代理移动到标识为 X-OperaMini-Phone-UA 的标头值中:
所以我正在寻找 PHP 代码,它将从标头(如果存在)中提取它,如果不存在,则将其标识为 NA 以用于数据库日志记录。
这是我目前用于记录的代码,由其他人编写
<?php
mysql_connect('server.com', 'dbuser', 'dbpass');
$url = mysql_real_escape_string("http://$_SERVER[SERVER_NAME]$_SERVER[REQUEST_URI]");
$fn = mysql_real_escape_string($_SERVER['SCRIPT_NAME']);
$ip = mysql_real_escape_string($_SERVER['REMOTE_ADDR']);
$ref = mysql_real_escape_string($_SERVER['HTTP_REFERER']);
$ua = mysql_real_escape_string($_SERVER['HTTP_USER_AGENT']);
mysql_select_db('db');
mysql_query("INSERT INTO `record` VALUES ('$url', '$fn', NOW(),'$ip', '$ref','$ua')");
?>
所以,现在我要添加一些名为 opera_user_agent 的字段,如果有,我想记录 Opera 用户代理,如果没有,则使用“NA”。
【问题讨论】:
-
您能显示您的日志记录代码的相关部分吗?
$_SERVER['HTTP_USER_AGENT']在哪里领取,如何存放?
标签: php mobile opera-mini