[Zope] Python Scripts and HTML Forms
Jonathan
dev101 at magma.ca
Thu Aug 17 16:46:02 EDT 2006
If you have a line like
<input type="text" name="first_name" value="default value">
in your html file then if you try the following in your script file
print REQUEST['first_name']
return printed
you should see "default value" printed out
you can try:
print REQUEST
to see the entire contents of REQUEST (very informative)
Note: if you do not have a default value in your <input> statement and you do not enter anything in the input field when the form is displayed, then when the form is submitted REQUEST will not contain an entry for the corresponding form field (an entry is made in REQUEST only when data is entered in the form field)
Jonathan
----- Original Message -----
From: Muk Yan
To: Jonathan
Cc: zope at zope.org
Sent: Thursday, August 17, 2006 4:40 PM
Subject: Re: [Zope] Python Scripts and HTML Forms
Hey All,
Sorry about that, what I meant is that I get a KeyError. It says that the first_name in REQUEST['first_name'] is not found, when I try to set the variable in line in the script where fname = REQUEST['first_name'].
Thanks in advance.
Cheers,
Muk
On 8/17/06, Jonathan < dev101 at magma.ca> wrote:
What does "it doesn't seem to work" mean? Error messages/traceback? What does your form & script contain? More info on the problem is definitely required!
Jonathan
----- Original Message -----
From: Muk Yan
To: Jonathan ; zope at zope.org
Sent: Thursday, August 17, 2006 4:20 PM
Subject: Re: [Zope] Python Scripts and HTML Forms
Hey Jonathan, All,
Thanks I tried your solution, but it doesn't seem to work. Can anybody shed some more light on this situation, since what Jonathan provides is exactly what I want to do, but it's not working.
Am I forgetting to put parameteres or some other newbie mistake like that?
Thanks in advance and thanks again Jonathan.
-Muk
On 8/17/06, Jonathan <dev101 at magma.ca> wrote:
Form variables are stored in REQUEST. In a python script you gain access to REQUEST by:
REQUEST = container.REQUEST
you can then access the form variables by:
fname = REQUEST['first_name']
you can check for the presence of a form variable by
if REQUEST.has_key('first_name'):
or
if REQUEST.get('first_name', None):
hth
Jonathan
----- Original Message -----
From: Muk Yan
To: zope at zope.org
Sent: Thursday, August 17, 2006 2:57 PM
Subject: [Zope] Python Scripts and HTML Forms
Dear Trusted Zope Zealots,
This subject was a bit too broad to do a google search on, because I've tried and the lack of relevancy was astounding.
I've probably been committing a cardinal sin in DTML, but I couldn't figure any other work around.
I have an HTML form in a DTML Document say:
<form action="process_this_form" method="post"
Name:<input type="text" name:"first_name">
</form>
I want to use "first_name" in a python script, but what I've been doing is setting it in the process_this_form, which is a DTML method:
DTML Method, process_this_form:
<dtml-call "REQUEST.SESSION.set ('firstName', first_name)>
<dtml-call "this_is_a_python_script()">
and in the Python Script, this_is_a_python_script
I use REQUEST.SESSION.get('firstName')
What my question is, is there anyway to directly access "first_name" from the form in the python script without having to have to call the <dtml-call " REQUEST.SESSION.set('firstName', first_name)> and then REQUEST.SESSION.get('firstName') in the python script. Sort of a sophomoric question, but any help would be appreciated. Thanks in advance.
-Muk
--------------------------------------------------------------------------
_______________________________________________
Zope maillist - Zope at zope.org
http://mail.zope.org/mailman/listinfo/zope
** No cross posts or HTML encoding! **
(Related lists -
http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope-dev )
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.zope.org/pipermail/zope/attachments/20060817/7e9160d7/attachment-0001.htm
More information about the Zope
mailing list