Tema: cookies
Ver Mensaje Individual
  #6 (permalink)  
Antiguo 12/08/2011, 07:57
jhz1983
 
Fecha de Ingreso: diciembre-2010
Mensajes: 166
Antigüedad: 13 años, 4 meses
Puntos: 0
problemas cookies

tengo este programa.. quiero que.. se cree una cookie en caso de que no este creada y que almacene la fecha actual.. en caso de estar creada quiero que se actualize a la fecha actual y que diga la diferencia entre la fecha de la cookie y la actual. en principio tengo esto hecho:

Código:
<head>
	<script language="javascript">
	<!--
		function setcookie()
			{
			var fecha= new Date();
			fecha.getTime();
			var valida= new Date(2012,12,31);
			name="diferencia";
			document.cookie=name+"="+fecha+";"+((valida==null)?"":("expires="+valida.toGMTString()));
			}

		function leercookie(nombre)
			{

			var fin="";
			var buscamos=nombre+"=";
			if(document.cookie.length>0)
				{
				var inicio=document.cookie.indexOf(buscamos);
				if(inicio!=-1)
					{
					inicio+=buscamos.length;
					fin=document.cookie.indexOf(";",inicio);
					if(fin==-1)
					fin=document.cookie.length;
				return unescape(document.cookie.substring(inicio,fin));
                                 setcookie();


					}


			}
			else
								{
								alert("Es la primera vez que entras en esta página?");
								setcookie();
					}
			}
	//-->
	</script>
	</head>

<body>
<script language="javascript">
<!--
	document.write("La ultima vez que visitaste esta pagina fue.. "+leercookie("diferencia")+" a ver si te pasas mas a  menudo");
//-->
</script>


</body>
</html>
la función para crear la cookie esta ok o eso creo xD, la funcion leercookie comprueba que exista y en caso de no existir la crea.. aqui tengo el primer problema en caso de que exista quiero que se reescriba con la fecha actual cosa que no consigo .. hago una llamada a setcookie():
var inicio=document.cookie.indexOf(buscamos);
Código:
if(inicio!=-1)
					{
					inicio+=buscamos.length;
					fin=document.cookie.indexOf(";",inicio);
					if(fin==-1)
					fin=document.cookie.length;
				return unescape(document.cookie.substring(inicio,fin));
                                 setcookie();
pero.. no consigo que se reescriba... y luego que ya no se ni por donde empezar como puedo comparar las fechas? he pensado en utilizar parse .. que os parece?