Problema al obtener las variables de un formulario

Marcos Sánchez Provencio rapto en arrakis.es
Mar Nov 13 10:49:46 CET 2007


Me imagino que cgi.FieldStorage() sólo va si usas el cgihandler. Si no,
<http://www.modpython.org/live/mod_python-3.2.8/doc-html/node94.html>

6.1.3 Form Data
In the process of matching arguments, the Publisher handler creates an
instance of FieldStorage class. A reference to this instance is stored
in an attribute form of the Request object.

Since a FieldStorage can only be instantiated once per request, one must
not attempt to instantiate FieldStorage when using the Publisher handler
and should use Request.form instead.

Uséase, que hay que usar Request.form

El vie, 09-11-2007 a las 17:31 -0400, Juan Carlos Davila escribió:
> Hola,
> si estoy usando mod_python. Instalé el paquete de debian libapache2-mod-python.
> La cuestion es que estoy modificando una aplicación que ya existe,
> pero el ejemplo
> dado sirve para exponer mi problema. Lo que dices Chema de que "los
> argumentos de GET/POST se pasan directamente al manejador" no me sirve
> porque no conozco los valores de las variables.
> Lo que necesito es obtener los valores de un formulario que se envian
> de una pagina web.
> Me he guiado por el link
> http://www.pyzine.com/Issue008/Section_Articles/article_CGIOne.html
> y veo que los datos de un formulario se obtienen con la instruccion:
>      form = cgi.FieldStorage()
> si no es la forma quisiera que me guiaran para obtener los datos de un
> formulario en mod_python.
> Gracias.
> 
> On Nov 8, 2007 10:37 PM, Chema Cortes <py en ch3m4.org> wrote:
> > El Wednesday 07 November 2007 22:46:44 Juan Carlos Davila escribió:
> > > Buenas tardes,
> > > estoy realizando mi primer programa con el modulo de python, pero
> > > tengo un problema.
> > > No puedo obtener las variables que se envian por un formulario. Coloco
> > > la instrucción
> > >     form = cgi.FieldStorage()
> > > pero parece que no guarda ninguna variable.
> > > Sé que se esta enviando porque lo hago por metodo GET y la url me queda
> > > asi: http://localhost/cgi-bin/recibe.py?nombre=Jose
> >
> > Se intuye que estás usando mod_python. El módulo cgi sería para crear cgis,
> > que no es tu caso. En mod_python, los argumentos de GET/POST se pasan
> > directamente al manejador:
> >
> > ****************
> >  recibe.py
> > ****************
> > #!/usr/bin/python
> >
> > import cgi
> >
> > def index(req,nombre="Juan Nadie"):
> >   req.content_type = "text/html"
> >   return "<HTML><BODY> Tu nombre es: %s </BODY></HTML>" % nombre
> > _______________________________________________
> > Lista de correo Python-es
> > http://listas.aditel.org/listinfo/python-es
> > FAQ: http://listas.aditel.org/faqpyes
> >
> _______________________________________________
> Lista de correo Python-es 
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes

------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes


Más información sobre la lista de distribución Python-es