CGInitiate has asked for the wisdom of the Perl Monks concerning the following question:

Here is some code that i'm trying to use to set a cookie using CGI.pm:
push (@styleck, $style); $netdriver_stylesheet = $stl -> cookie ( -name => 'netdriver_stylesheet', -value => $style, ); print $stl -> header (-cookie => $netdriver_stylesheet);
Then, later on, i'll read it with something like this:
@preference = $page -> cookie('netdriver_stylesheet'); if (@preference[0] ne "") { $style = "@preference[0]"; } else { $style + = "driver"; }
Problem: while this code works great on my local system (set up with Indigoperl & win '98), but when i publish it to the web (a Linux OS-- not sure if this might be the root of the problem), the script apparently fails to set the cookie.

Is there some help out there...? Anybody, anybody...?

Thanks and God bless....

'i'nitiate
:^)

Edit by dws to remove extraneous <br/> tags from within <code> blocks.

Replies are listed 'Best First'.
Re: jr-level cookie question....
by cfreak (Chaplain) on Jul 19, 2002 at 18:40 UTC

    Well your code looks correct to me. You might want to check to make sure there is a value in $style.

    A couple of other good debuging tricks: If you have access to the server's error_log that can be a big help, even if its just a warning it can go a long way to finding out what's wrong.

    Another thing you can do, is look at what the server is actually sending in the cookie you can do this by replacing your normal header with:

    print "Content-type: text/plain\n\n"; print $stl->header(-cookie=>$cookie); exit;

    It won't try to set your cookie, instead it will print it out to the browser so you can make sure it contains all the correct information.

    Finally cookies can be flaky, (at least they have been in my experience). Recently I had some problems with IE 6 not accepting cookies even though my code was perfectly valid. Another time I had weird issues with IE (all versions) and a certain version of Apache, (been awhile I can't remember what version now).

    Hope that helps
    Chris

    Lobster Aliens Are attacking the world!