set_cookie(): Para enviar una cookie al navegador devemos invocar
a esta función pasándole 5 parámetros, los cuales son:
&get_cookie(): Como ya vimos, esta función devuelve una variable HASH con los pares NOMBRE=VALOR de las cookies que le hallamos enviado al navegador, que no hayan expirado y que sean para nuestro directorio y dominio.
Entonces para usarla solo debemos almacenar el valor retornado por esta función en una variable hash.
my %cookie_data = &get_cookie();Es de notar que esta variable no necesita que le enviemos ningun parámetro, solamente devuelve un hash
Script CGI
Ahora si, llegó el momento de crear un CGI que utilice nuestra librería. Así que vamos directamente a lo interesante, el script:
#!/usr/bin/perl -wuse strict;
push (@INC, '.');
require 'cookie_lib.pl';
#######
my ($expires,$path,$domain);
$expires = '3-May-2004 00:00:00 GTM';
$path = '/local-cgi';
$domain = '.baboonsoftware.com';
#######
my %cookie_data = &get_cookie();
if ($cookie_data{'nombre'} eq '') {
&set_cookie('nombre','Desconocido',$expires,$path,$domain,'secure');
#esta cookie se transportará solo por SSL
}
if ($cookie_data{'usuario_registrado'} eq '') {
&set_cookie('usuario','Desconocido',$expires,$path,$domain,'');
#esta cookie se transportará con o sin SSL
}
print "content-type: text/htmlnn
usted tiene $cookie_data{'cantidad_productos'} en su carrito de compra de
E-Commerce<br><br>
Su nombre es $cookie_data{'nombre'}";
exit;
Como vemos en este simple ejemplo, usar las cookies no es tan complicado como parece. Por ejemplo para enviarlas, simplemente tenemos que enviar una serie de parámetro que como a cualquier funcion de perl, se los podemos pasar mediante variables o mediante strings.
Usuarios que han visto este tema también han visto...
- Enviando un Archivo Existente como Respuesta
- Seguridad en Scripts CGI.
- Links aleatorios con CGI
- Diferencias entre CGI y PHP
- Primeros Pasos en CGI
Información legal | Política de Privacidad | Contacte con nosotros
Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.