push @query_string, "$p=" . $q->escape( $_ ) for @settings;
I tried replacing that line with the code you gave me, and it looks like
the original error is gone and replaced by errors further down in the
program. I'm not a perl programmer, so I'm afraid I'm at a bit of a loss
to fix them on my own. My #! line does point to the correct version of
perl though. I replaced the code block starting at line 690 with code you
gave me (the second for loop is new):
for my $p ( qw/si sbm/ ) {
my @settings = $q->param($p);
next unless @settings;
for my $setting ( @ settings ) {
$setting = $q->escape( $setting );
push @query_string, "$p=$setting";
}
}
I ran perl again and got the following errors:
syntax error at ./swish.cgi line 1306, near "$buffer foreach "
syntax error at ./swish.cgi line 1328, near "" : '@$_'\n"
foreach "
syntax error at ./swish.cgi line 1331, near "}"
Execution of ./swish.cgi aborted due to compilation errors.
My script shows:
1306: push @{$query_match{$layer}{$_}}, $buffer foreach @fields;
1328: print STDERR " : '@$_'\n" foreach
@{$query_match{$layer}{$tag}};
1331: }
This is closing in at the end of the code, so I'm crossing my fingers
here! I can't tell you thank you enough for helping me out.
-Kate
*********************************************************************
Due to deletion of content types excluded from this list by policy,
this multipart message was reduced to a single part, and from there
to a plain text message.
*********************************************************************
Received on Mon Jan 28 20:03:13 2002