Here is the solution I went with. Thanks to everyone for their assistance. It is very appreciated!

In my HTML::Template, I have a login section. If you are not logged in (ie, we can't find a session_id cookie in your browser), we send the following to your browser:
[HTML building some tables and the top-of-page navigation] <SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript"> function fill_in_screensize() { document.forms['login_form'].screen_width.value=screen.width; document.forms['login_form'].screen_height.value=screen.height; return true; } </SCRIPT> <FORM name=login_form ACTION=[ACTION] METHOD=[METHOD] <input type=hidden name=screen_width> <input type=hidden name=screen_height> [input fields for username and password] <input type=submit value="submit" onClick='fill_in_screensize();'> </FORM>
Then, in my perl code, I grab the values with $query->param('screen_width'), dbh->quote it and then stuff it into the user's account record along with the other data I track (ip_address, user-agent string, etc).

I don't believe WebTV supports Javascript but since WebTV displays at less than 544 pixels wide, I can just parse for WebTV user-agent strings to get an idea of how many usrs have a resolution under 640x480.

Wow! The first time Javascript has served a useful purpose in all my years!

In reply to The solution I've gone with. by Seumas
in thread Get visitor's screen size. by Seumas

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.