|
Do the code snippets below illustrate what is happening? A form that looks like this (it could have been generated by a program) <form action="/cgidev2p/testdual.pgm?data=something" method="post"> <input type="text" name="FromPost" value="PostData" size="10" maxlength="10"> <input type="submit" name="submit" value="Submit"> </form> Program testdual looks like this: C eval nbrVars = C zhbgetinput(savedquerystring:qusec) C eval frompost = ZhbGetVar('frompost') savequerystring contains "data=" frompost contains "FromPost" savedquery string should contain data=something. If this is the case, this is an http server bug. I'll report it to development. In the meantime, you can circumvent it by adding an & to the end of the data and then trimming it off in the CGI program. For example: <form action="/cgidev2p/testdual.pgm?data=something&" method="post"> C eval i = %len(savedquerystring) C if if i > 0 and %subst(savedquerystring:i:1)='&' C eval savedquerystring = %subst(savedquertystring:1:i-1) C endif Mel Rothman CGIDEV2 Author IBM Rochester "Christopher A. Libby" wrote: > > As a side note, I tried two tests. I first changed the form method to GET > and included a hidden field (func) in the form. The program worked as > expected. Second, with the new form I changed the method back to POST. The > program again worked as expected. Can I just not mix GET and POST in the > same web page? > > -Chris > > --------------------------------------------------------- > Christopher A. Libby, Programmer/Analyst > Maine Public Service Company (www.mainepublicservice.com) > clibby@mainepublicservice.com (207) 768-5811 ext. 2210 > > > -----Original Message----- > > From: Christopher A. Libby [mailto:clibby@mainepublicservice.com] > > Sent: Friday, July 27, 2001 3:43 PM > > To: WEB400@midrange.com > > Subject: RE: Mixing GET and POST Methods > > > > > > Thanks for the help. I've made the changes and updated the > > service program. I also restarted the server, but I still get > > the same problem. I think I may have mistated my question > > earlier. I'm using the GET method to direct my program to the > > correct subroutine, and the POST method the transmit form data. > > To setup a new account, I use GET to direct my program to the > > NEWACCT2 subroutine, and POST to transmit the form information to > > the program. Below is the main program, and the program seems to > > fail at the point where it tries to extract Function from > > savedquerystring, whose value is "func=". The URL submitted to > > the server is "http://.../weblibp/webcusinq.pgm?func=vrfyacct". > > > > > > *-------------------------------------------------------------------- > > * START Main Progam > > > > *-------------------------------------------------------------------- > > > > * initialize the program > > C Exsr Init > > > > * turn debugging on or off - see JobDebugIndicator > > C callp wrtjobdbg(JobDebugInd) > > > > * read in HTML source file > > C Exsr LoadHTML > > > > * get user input > > C eval nbrVars = > > zhbgetinput(savedquerystring:qusec) > > > > C callp > > updHTMLVar('COMPANY':company:InitHTMLVars) > > C callp > > updHTMLVar('SITETITLE':sitetitle:ChgHTMLVars) > > C callp > > updHTMLvar('BASEHREF':basehref:chgHTMLvars) > > C callp wrtsection('header') > > > > * if no parameters, show login screen > > C If nbrVars = 0 > > C Exsr ShowLogin > > C Eval GetOut = '1' > > C EndIf > > > > * populate session datastructure > > C eval Function = zhbgetvar('func') > > Function > > C eval SessionID = > > zhbgetvar('sessionid') SessionID > > C eval ErrorID = zhbgetvar('error') > > Error Msg > > > > C If ErrorID <> *Blanks > > C Exsr ShowLogin > > C Eval GetOut = '1' > > C EndIf > > > > C If GetOut = '0' > > C Select > > C When Function = 'newacct' > > C Exsr NewAcct > > C When Function = 'vrfyacct' > > C Exsr NewAcct2 > > C When Function = 'auth' > > C* Exsr Authenticate > > C When Function = 'main' > > C* Exsr RetrieveSession > > C* Exsr ShowMain > > C Other > > C eval ErrorID='errGen1' > > C exsr ShowLogin > > C EndSl > > C EndIf > > > > C callp updHTMLVar('DISCLAIMER':sitetitle: > > C ChgHTMLVars) > > C callp wrtsection('footer') > > C callp wrtsection('*fini') > > > > C EndAll Tag > > C Return > > > > *-------------------------------------------------------------------- > > * END Main Progam > > > > *-------------------------------------------------------------------- > > > > > > --------------------------------------------------------- > > Christopher A. Libby, Programmer/Analyst > > Maine Public Service Company (www.mainepublicservice.com) > > clibby@mainepublicservice.com (207) 768-5811 ext. 2210 > > > > > > +--- > | This is the WEB400 Mailing List! > | To submit a new message, send your mail to WEB400@midrange.com. > | To subscribe to this list send email to WEB400-SUB@midrange.com. > | To unsubscribe from this list send email to WEB400-UNSUB@midrange.com. > | Questions should be directed to the list owner/operator: david@midrange.com > +--- +--- | This is the WEB400 Mailing List! | To submit a new message, send your mail to WEB400@midrange.com. | To subscribe to this list send email to WEB400-SUB@midrange.com. | To unsubscribe from this list send email to WEB400-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.