Skip to main content.
home | support | download

Back to List Archive

Re: "Ambiguous use" swish.cgi error

From: Kate Ericson <kericson(at)>
Date: Mon Jan 28 2002 - 20:02:37 GMT
      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 
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.

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