in reply to Detection of Browsers with Perl

Each HTTP request has a user agent string, which contains information about the browser and platform. For CGI scripts, this ends up in $ENV{HTTP_USER_AGENT}. You can try to match this against what you expect for Android/iPhone/Windows.

Take a look at http://detectmobilebrowser.com which has detection scripts for many languages (sadly not Perl). You can study them and pull what you need out of their regexes.

Also take a look at HTTP::BrowserDetect for general browser detection. It may come in handy.