Foros del Web » Programando para Internet » Python »

Duda con doble formulario PHP

Estas en el tema de Duda con doble formulario PHP en el foro de Python en Foros del Web. Buenas a todos: Verán, estoy trabajando en un script que interactúa con un formulario PHP usando el protocolo HTTP-POST. Resulta que hay dos páginas, una ...
  #1 (permalink)  
Antiguo 03/09/2012, 14:39
Avatar de radyrapstyle  
Fecha de Ingreso: septiembre-2012
Mensajes: 2
Antigüedad: 11 años, 7 meses
Puntos: 0
Duda con doble formulario PHP

Buenas a todos:

Verán, estoy trabajando en un script que interactúa con un formulario PHP usando el protocolo HTTP-POST.
Resulta que hay dos páginas, una tiene varios botones radiales y un botón submit. Con ese formulario, el script se comunica bien y no hay ningún problema.
Tras elegir la opción en el anterior formulario, aparece otro formulario con login. Pues bien, al intentar hacer el envío POST, me dice que la sesión ha caducado. Es decir, el problema ha de estar relacionado con la sesión de PHP o algo así.

Código Python:
Ver original
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3.  
  4. import urllib
  5. import urllib2
  6. import sys
  7.  
  8. url1 = 'https://...../Autentificador ' #ATIENDE EL FORMULARIO DE LA PRIMERA PÁGINA (NO TIENE EXTENSIÓN .PHP)                
  9. url2 = 'https://..../AutentificadorServer' #SEGUNDO FORMULARIO
  10.  
  11. user='' #USUARIO
  12. pasw='' #PASSWORD
  13.  
  14. # PRIMER ENVÍO POST: LO HACE BIEN
  15. values = {'modo':'AUTENTIFICACION'}
  16. data = urllib.urlencode(values)
  17. req = urllib2.Request(url1, data)
  18. resp = urllib2.urlopen(req)
  19. page = resp.read()
  20. print page #MUESTRA LA PÁGINA SIGUIENTE CORRECTAMENTE
  21.  
  22. # SEGUNDO ENVÍO POST: LA SESIÓN CADUCA Y NO SÉ POR QUÉ (¿COOKIE?)
  23. values2 = {'modo':'USUARIO','login':user,'pass':pasw}
  24. data2 = urllib.urlencode(values2)
  25. req2 = urllib2.Request(url2, data2)
  26. resp2 = urllib2.urlopen(req2)
  27. page2 = resp2.read()
  28. print page2 #MUESTRA LA PÁGINA DE ERROR (SESION CADUCADA POR INACTIVIDAD)

PDTA: Este es mi primer post y espero poder ayudar también a los demás. Un saludo y gracias!
  #2 (permalink)  
Antiguo 03/09/2012, 19:03
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años
Puntos: 1360
Respuesta: Duda con doble formulario PHP

Este tema lo discutí hace poco. Pero te voy a decir que es lo que tienes que hacer:

1.- Usa requests es una librería mucho mas sencilla de trabajar.
2.- Usa un cookiejar para mantener la sesion.

Fuente: Foros del Web
  #3 (permalink)  
Antiguo 04/09/2012, 17:18
Avatar de radyrapstyle  
Fecha de Ingreso: septiembre-2012
Mensajes: 2
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Duda con doble formulario PHP

De acuerdo, ya lo he solucionado. Efectivamente la solución estaba en el uso de cookies para mantener la sesión abierta.

Etiquetas: doble, formulario, gui, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:55.