in reply to Semicolons in webforms

Perl interprets this as receiving an end of line whenever I use the data.

What is the evidence that makes you think perl is interpreting a semicolon as an end-of-line? And what does "use the data" actually mean here?

In other words, show us some code that demonstrates how you are "using the data", show the particular result that indicates "receiving an end of line", and show us what you want (or expect) the result to be so we can see how it differs from the result you actually get.

Replies are listed 'Best First'.
Re^2: Semicolons in webforms
by dmaranan (Acolyte) on Dec 31, 2007 at 02:52 UTC
    You are correct, I think my assumption that it is interpreting a semicolon might be in correct. The error message I get when I attempt to use the data (right now using the data is simplying printing the data to output) I get the message "No close tag marker." I'll research what that actually means, but if you have any clue I'd definatley be open to help. Thanks again.
      Sounds like derby is likely to be on the right track. The error message is coming from the XML parser, saying that it is reaching an end of string (or end of input) before seeing a closing tag (most likely, it's not seeing </tablefield>). So follow up on the advice below.
        I think I know what is happening but still haven't figured out the solution. First I stripped down the code to use CGI without any of our in house packages. What I discovered is that CGI is interpreting the semicolon as a delimiter of the parameter list sent to the web server. So basically every time the webserver received a semicolon from the client its interpreting it as 'Hey I'm a new parameter!'. I added the line:
        use CGI qw(-oldstyle_urls);
        hoping that it would not see the semicolon as a delimiter, but that didn't work. Here is a dump of the CGI object:
        $VAR1 = bless( { 'strerrortext' => [ 'strerror' ], 'strxmltext' => [ '<testproblem>ti' ], '.parameters' => [ 'strxmltext', 'me</testproblem>', 'strerrortext' ], 'me</testproblem>' => [ '' ], '.charset' => 'ISO-8859-1', '.fieldnames' => {}, 'escape' => 1 }, 'CGI' );
        The semicolon is located in the tag testproblem:
        <testproblem>ti;me</testproblem>
        As you can see from the parameter list, CGI is interpreting the text after the semicolon as a parameter. Any other thoughts?