in reply to Get vs. POST in CGI.pm

I don't pretend to understand the entire CGI upload intricacies, but I maintain a fair number of upload scripts.

I'm not sure about the GET Vs POST issue ... my experience with uploads, though, leads me to believe that you can't really test *anything* until the upload process has started, and also to believe that you can't test any thing of substance until the upload process has completed.

It would seem (ie: something I haven't tried) that you could test/confirm that some type of data is being submitted after the upload starts, but my impression has been that until the entire file is actually uploaded and on your server, it's going to be tough to run any "real" type of tests on the file content.

I may be way off the mark (and no doubt others will point that out), but it seemed that the responses you got so far weren't really responding to your question.

Hope this helps ... and I'm hoping others will respond ... I'd like to know how soon in the upload process tests can actually be implemented. I've been living with the assumption that you have to wait until the entire file is processed before any real evaluation can happen.

Replies are listed 'Best First'.
Re: Re: Get vs. POST in CGI.pm
by Anonymous Monk on Sep 24, 2003 at 01:57 UTC

    I may be way off the mark (and no doubt others will point that out), but it seemed that the responses you got so far weren't really responding to your question.

    I feel that way too: I don't feel like I'm communicating myself clearly. I got wicked explanations of GET vs. POST and great code snippets for doing the validation that I need. So, from a purely pragmatic point of view I'm all good.

    The rub is, I still don't understand why this behaviour is observed. The docs say that upload will only return undef or a valid file-handle. I find that it returns a string rather than undef if I pass it a garbage filename. That wasn't expected behaviour. And, more confusing to me, the behaviour seems to change depending on whether I GET or POST it. Not understanding this bugs me! :)