#20462 [Ver->Csd]: get_browser() does not correct parse browscap.ini
| From: | iliaa@php.net | Date: | Mon, 18 Nov 2002 03:16:56 +0000 |
| Subject: | #20462 [Ver->Csd]: get_browser() does not correct parse browscap.ini | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-25142@lists.php.net to get a copy of this message | ||
ID: 20462
Updated by: iliaa@php.net
Reported By: ml@mled.net
-Status: Verified
+Status: Closed
-Bug Type: *General Issues
+Bug Type: Unknown/Other Function
-Operating System: *
+Operating System: Redhat 8.0
-PHP Version: 4.3.0-dev
+PHP Version: 4.3.0-pre2
New Comment:
This bug has been fixed in CVS.
In case this was a PHP problem, snapshots of the sources are packaged
every three hours; this change will be in the next snapshot. You can
grab the snapshot at http://snaps.php.net/.
In case this was a documentation problem, the fix will show up soon at
http://www.php.net/manual/.
In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites in short time.
Thank you for the report, and for helping us make PHP better.
Previous Comments:
------------------------------------------------------------------------
[2002-11-17 20:59:16] sniper@php.net
Verified with: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.1)
Gecko/20021110
------------------------------------------------------------------------
[2002-11-17 04:28:53] ml@mled.net
hello,
i tried different browser with get_browsers, and had a lot of trouble.
for me, it seems that get_browser() does not recognize the question
mark '?' as joker sign if there is no asterisk '*'.
testet browsers (on a win2000):
ie 5 ok
mozilla 1.x, netscape 6/7, opera 6.2/7b not work
sample script:
$ua = "Mozilla/5.0 (Windows; ?; Windows NT 5.0; ??-??; rv:1.1)
Gecko/????????";
print "<b>user_agent exact as written in browscap.ini:</b> [$ua]<br
/>";
fPrintBrowser( get_browser($ua) ) ;
$ua= $_SERVER["HTTP_USER_AGENT"];
print "<b>user_agent as it browser sends:</b> [$ua]<br />";
fPrintBrowser( get_browser($ua) ) ;
function fPrintBrowser($browser) {
print "<b>pattern: </b>" . $browser->browser_name_pattern
."<br
/>";
print "<b>browser: </b>" . $browser->browser ."<br
/>";
}
sample output:
user_agent exact as written in browscap.ini: [Mozilla/5.0 (Windows;
?; Windows NT 5.0; ??-??; rv:1.1) Gecko/????????]
pattern: Mozilla/5\.0 (Windows; .; Windows NT 5\.0; ..-..; rv:1\.1)
Gecko/........
browser: Mozilla
user_agent as it browser sends: [Mozilla/5.0 (Windows; U; Windows
NT 5.0; en-US; rv:1.1) Gecko/20020826]
pattern: .*
browser: Default
browscap.ini from http://www.garykeith.com/ (November 13,
2002):
entry (line 5522) don't work:
[Mozilla/5.0 (Windows; ?; Windows NT 5.0; ??-??; rv:1.1)
Gecko/????????]
modified entry which works (asterisk at the end):
[Mozilla/5.0 (Windows; ?; Windows NT 5.0; ??-??; rv:1.1)
Gecko/????????*]
thanks!
markus
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=20462&edit=1