Oct 5, 2001, 6:37 AM
Post #1 of 2
this is a follow-up to my earlier post w/ 'CGI::Application'in the subject:
CGI::Applicaton.pm and state
my application is growing big, not to mention there're a dozen versions of it to date;
it's an online catalog management system that i plan to eventually make freely available via sourceforge;
CGI::Application is a reusable cgi app framework module
available on CPAN;
actually, there're versions of my program that don't use
CGI::Application.pm, just CGI and Fcntl modules;
i have experience using/administrating Apache under Linux,
so am familiar w/ permissions, http header quirks, error logging and such, so don't need basic advice i guess..
i think, i've figured out my file upload problem, as am hacking at it nonstop ;) actually, it was more of an anon.
send me private mess. if you'd like to see how i did it;
but my application still displays weird behaviors, eg:
<HEAD> in order to maintain state and propagate certain
'runmode_name' here being the name of subroutine -- that's how my app's internal /dispatch table/ works;
misteriously, either no other 'name-value' pair shows in browser's Location field(query string) to the right of the runmode pair or even if some does show up in Location field, my application always routes to the default screen which
happens to be login screen;
hidden fields also seem to get ignored, so effectively i
can't transfer any useful params to route to the correct
subroutine and thus i can't maintain state!
now, if i manually add the appropriate name-value pairs to
the query string in the Location field of browser and hit return w/ focus in Location field or (in the case when everything shows up in the Location field) simply hit return with focus in Location field, then
everything works and i get dispatched to the correct screen,
which, while displayed properly(db manipulation would then work too), wouldn't produce correct responces if i try using the controls(buttons, selections, etc.)
among other things, i've tried flushing like so:
$| = 1; # but this doesn't seem to help..
and i think one doesn't have to flush buffers when using CGI.pm or am i wrong ?
at end of package do ?
perhaps someone has got any ideas as to the possible cause
of 'lasy' query string behavior described here off the top of their head ?
any suggestions much appreciated!!
i don't want to flood this forum space with lotsa code, but
hey, we could /join #perl_flood someplace irc and paste away and discuss -- i really could use a second brain or two here