Sab Jul 29, 2006 7:54 pm
|
 |
danimera
Perlero Adicto

|
Registrado: 23 Jun 2005
Mensajes: 244
Ubicación: Colombia
|
|
| Problema al Instalar en CGI::Session |
|
|
Resulta que hice mi aplicacion localmente y me funciona a la perfeccion,
Pero el Hosing que tengo no tiene instalado el CGI:Session, asi que no me lo quicieron instalar,
Yo lo subi a la carpeta donde tengo mi aplicacion y pues si me localiza el modulo, pero no me funciona bien no carga ni crea las sessiones,
Me podrian colaborar con esto |
|
|
|
Sab Jul 29, 2006 10:52 pm
|
 |
kidd
Creador de Perl en Español

|
Registrado: 15 Oct 2003
Mensajes: 1390
Ubicación: México
|
|
|
|
|
Hola:
¿No te tira ningún mensaje de error? Todo parece indicar que te falta cargar bien los archivos del módulo.
Saludos |
|
Dom Jul 30, 2006 4:29 am
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4212
Ubicación: Valladolid, España
|
|
|
|
|
| ¿Has definido un lugar en el que el CGI::Session pueda escribir sus ficheros de sesiones? |
|
Lun Jul 31, 2006 3:24 pm
|
 |
danimera
Perlero Adicto

|
Registrado: 23 Jun 2005
Mensajes: 244
Ubicación: Colombia
|
|
| cgi::Session |
|
|
| explorer escribió: | | ¿Has definido un lugar en el que el CGI::Session pueda escribir sus ficheros de sesiones? |
la verdad si subi e instale el mudulo bien de hecho.
Lo que no se quizas, es que no hedefinido un lugar en el que el CGI::Session pueda escribir sus ficheros de sesiones eso no lo he ehcho,
Pero no me sale ninguna especie de error, solo no me crea ni carga sessiones y es raro por que es el mismo que uso Localmente |
|

Lun Jul 31, 2006 7:39 pm
|
 |
kidd
Creador de Perl en Español

|
Registrado: 15 Oct 2003
Mensajes: 1390
Ubicación: México
|
|
|
|
|
Hola:
Si usas el driver file del módulo CGI::Session, si no defines explícitamente un directorio, entonces se creará de manera automática el directorio para las sesiones:
http://search.cpan.org/~markstos/CGI-Session-4.14/lib/CGI/Session/Driver/file.pm
Ahora, el problema puede estar en que se generan de manera correcta los directorios, pero no hay permiso para escribir en ellos, por lo que nunca se crea el archivo de la sesión.
Lo que te recomiendo, y que me parece es lo más conveniente, es que hagas un directorio para tus sesiones, y lo definas al momento de cargar el módulo, para más información acerca de como hacer eso, puedes ver la documentación de CGI::Session::Driver::file
http://search.cpan.org/~markstos/CGI-Session-4.14/lib/CGI/Session/Driver/file.pm
Saludos |
|

Sab Ago 05, 2006 8:58 am
|
 |
danimera
Perlero Adicto

|
Registrado: 23 Jun 2005
Mensajes: 244
Ubicación: Colombia
|
|
| Problemas con sessiones |
|
|
Ya puedo lograr que me salga esto:
Set-Cookie: CGISESSID=48b6f8655a9eda35c79b1fe63e986790; path=/; expires=Sat, 05-Aug-2006 15:54:57 GMT Date: Sat, 05 Aug 2006 14:54:57 GMT
Pero aun asi, no me carga la session, quiere decir que las variables no me aparecen con ningun valor
Sera que me falta esto o que
$session = CGI::Session->load() or die CGI::Session->errstr;
pero no me sale ningun error |
|
Sab Ago 05, 2006 12:19 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4212
Ubicación: Valladolid, España
|
|
|
|
|
A mí lo que más me sorprende es que dices que sí que te funciona en local... tiene que haber alguna diferencia para que luego no funcione en remoto...
Hay otros módulos, como CGI::Persistent, que se encargan también del tema de sesiones, pero con CGI::Session debería bastar... |
|
Sab Ago 05, 2006 1:32 pm
|
 |
danimera
Perlero Adicto

|
Registrado: 23 Jun 2005
Mensajes: 244
Ubicación: Colombia
|
|
|
|
|
Es que si Explorer, me funciona Localmente en perfeccion,
La otra seria que mi computador no aceptara cokkies y por eso me pasa esto, Podria ser, el Firewall o no se,
Pero mi aplicacion es Perfecta por decirlo asi en el manejo de Sessiones en el computador local donde la desarrolle. |
|
Sab Ago 05, 2006 2:30 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4212
Ubicación: Valladolid, España
|
|
|
|
|
| Hecha un vistazo al ejemplo que hay aquí, aunque es un mal ejemplo porque no sigue la filosofía CGI::Session al 100%, pero al menos se sabe que funciona. Puedes intentar probar con un ejemplo así, sencillo, a ver si así descubres el porqué falla. |
|

Sab Ago 05, 2006 4:31 pm
|
 |
danimera
Perlero Adicto

|
Registrado: 23 Jun 2005
Mensajes: 244
Ubicación: Colombia
|
|
|
|
|
Increible Explorer, Tu ejemplo me funciono perfectamente,
Me carga la session bien, lo probe asi
programa1.cgi?login=daniel y al darle click en el siguiente me carga
hola de nuevo daniel.
Mis dudas recaen es esto, que ambiguedad hay aqui:
print header; -> que es el del modulo CGI
print $session->header; -> Que esl del modulo session
Cual de los dos debo usar o que, por que creo que es aqui el problema, todos mis script tienen
print header;
Pero cuando ya trabajo con el CGI:Session, debo omitir esa linea o que?
QUizas ese es mi problema, sin comentar que en mi computador localmente me funciona bien, Pero me acabo de dar cuenta que el tiene los header automatizados, entonces nunca me general error, algo asi creo |
|

Sab Ago 05, 2006 5:03 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4212
Ubicación: Valladolid, España
|
|
|
|
|
En principio da igual quien envía el header, pero hay que enviarlo, porque es la respuesta normal de una petición HTTP. Lo principal es crear la cookie de la sesión. En el ejemplo que te he dado NO se utilizan cookies, sino que se pasa en el URL de la petición. CGI::Session lee, en el segundo programa, el número de sesión, lo recupera, y sabe el nombre de la persona. Pero yo creo que no está bien hecho, porque accedo diréctamente al parámetro CGISESSID, cuando todo eso debería ser automático.
Lo mejor será leer el CGI::Session::Tutorial. |
|
Powered by phpBB © 2001, 2005 phpBB Group
|