Here is a code snippet,
use Data::Dumper; my $q = CGI->new(); my %var = $q->Vars(); my $log_file = 'log.txt'; open(LOG,">>$log_file") || err("Can't open log file: $!"); print LOG "URL: $ENV{REQUEST_URI}\n\n", Dumper(\%var,\%ENV)."\n\n", '=' x 60, "\n\n"; close LOG;
I am having problems with a script I wrote a few months ago. it was running on win 2000 and iis, now it is running on the same box with apache 1.3 which I have just installed for testing. Data Dumper prints out binary rubbish instead of the posted data that I was expecting. When I ran the same script a few months ago I got the results that I expected. The only thing that I have changed that I can think of is the webserver. Do I need to change anything in my script, or what else could be causing this sort of problem?
I can provide examples if required...

Thanks for your help.

Update: Unknown to me, the spec was changed, and they were sending this binary rubbish on purpose. Doesn't conform to normal http standards, but I was able to read the data by reading it from stdin before using CGI. Thanks to all for the advice, I was reminded to use binmode which proved to be correct as well.

In reply to cgi->vars() unexpected results by Gerard

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.