[ic] search error: Limit subroutine creation

interchange-users@interchange.redhat.com interchange-users@interchange.redhat.com
Mon Nov 26 09:23:00 2001


On Mon, Nov 26, 2001 at 09:00:04AM +0100, Joachim Leidinger wrote:
> cfm@maine.com wrote:
> > > > > 192.168.3.1 J8hvxIYc:192.168.3.1 - [23/November/2001:22:02:33 +0100]
> > > > > intos
> > > > > /cgi-bin/intos/scan/va=Selektionskz=0/sp=kresults_easy2G/tf=RN:n/co=yes/sf=Gruppe/se=SCSI
> > > > > Kabel/su=yes/sf=Untergruppe/se=SCSI-III (U2W/160) Flachbandkabel mit
> > > > > Terminator/su=yes/va=katalogseite=173/va=group=SCSI
> > > > > Kabel/va=subgroup=SCSI-III (U2W/160) Flachbandkabel mit Terminator
> > > > > search error: Limit subroutine creation: Bad code: /SCSI-III (U2W/:
> > > > > unmatched () in regexp at (eval 230) line 6, <SEARCH> chunk 1.
> > > > > >
>  ...
> > > > We don't use that kind of search any more so I can't give you any code.
> > >
> > > What kind of search? I'm in a muddle!
> > 
> > A scan page is doing a search.
> 
> What another kind of search can you use with a perl script and
> LWP::UserAgent?
> Have you a simple little example to use a POST Methode with
> LWP::UserAgent in a perl script to call IC for searching anything?
> I will be very glad to use another kind of search methode to get a right
> search results in my perl script.


The method you are using will work fine IF you are searching on a field
that does not need escaping.

code  price  description  category        squash         foo bar gletc
1111  99.99  asdfasdf     SCSI-III (U2W   SCSI_III_U2W   asd as  asdf

And use squash in your query instead of the category.  Create squash
column when you upload data.  (Note this is not much less work than
just escaping it right; it's for human convenience mostly.)

Alternatively, create a table of contents page listing your catalogs,
wget that and strip out the urls.  Use those.

Sorry, no examples; we don't use either method any more, but map mv_arg
to a category number, so categories look like   VLINK?mv_arg=20222 or
some such.  That's not going to help you.

> ....
> > > If you are so kind to explain me the meaning of the error message, I
> > > will be very glad about your help, information or suggestions.
> > 
> > You are passing "SCSI-III (U2W/160) LVD Kabel" as part of the
> > http request and it is not being decoded properly.  You need to
> > encode the request properly.
> > 
> > > > > search error: Limit subroutine creation: Bad code: /SCSI-III (U2W/:
> > > > > unmatched () in regexp at (eval 230) line 6, <SEARCH> chunk 1.
> > 
> > /SCSI-III (U2W/  <---- Oops, that last / is killing the parenthesis
> > match.  Not that you want that either!
> > 
> > My suggest is that you use another category string,
> > "SCSI_III_U2W_160_LVD_Kabel" is what Squash sub would produce.
> > That doesn't even have to be encoded.
> > 
> > If you can get IC to do this search and copy the URL to your
> > LWP that might do the trick.  Or use the filter in lib/Vend/Util
> > http_encode (maybe url_encode) I'm not sure which.
> 
> I've tried the same search string urldecode per hand in my browser with
> no luck. :-(
>  
> Thank you very much and please .... stay on this threat!
> 
> 
>  Joachim
> 
> -- 
> Hans-Joachim Leidinger | Dipl.-Phys.Ing. Entwicklung eCommerce
> [Hans-Joachim.leidinger@bpanet.de]
> Black Point Arts Internet Solutions GmbH
> http://www.bpanet.de
> _______________________________________________
> interchange-users mailing list
> interchange-users@interchange.redhat.com
> http://interchange.redhat.com/mailman/listinfo/interchange-users

-- 

Christopher F. Miller, Publisher                               cfm@maine.com
MaineStreet Communications, Inc           208 Portland Road, Gray, ME  04039
1.207.657.5078                                         http://www.maine.com/
Content/site management, online commerce, internet integration, Debian linux