
15/03/2012, 14:44
|
 | | | Fecha de Ingreso: noviembre-2007 Ubicación: yecla murcia
Mensajes: 1.346
Antigüedad: 17 años, 3 meses Puntos: 51 | |
sincronizar reloj y php Buenas amigos tengo un pequeño gran problema en caso es que he creado un tienda con un cuanta atras el tiempo que tiene que estar un carrito de compra el problema es que tiene que ser de 15 minutos he colocado ese tiempo en un base de datos y un java script que controla el cuanta atras si llega a cero envia una solicitud para eliminar
Código:
function timeresetcar(ayo,mes,dia,hora,minuto,segundo) {
var nt={
ayo:0,
mes:0,
dia:0,
hora:0,
minuto:0,
segundo:0
}
nt.dia= dia;
nt.hora= hora;
nt.minuto= minuto;
nt.segundo= segundo;
var a = new Date();
var dif = new Date(ayo,mes - 1,dia,hora,minuto,segundo);
dif = (dif.getTime() - a.getTime())/1000;
if (dif < 0) {
$.ajax({
url: "<?php echo _URL::_('shop/reset/'. $this->cfxParam['cart']['code_user']);?>",
}).done(function(){
$('.carttimemsn').html('Tu cesta ha caducado');
cfx.swin( '<div class="box info">Tu cesta ha caducado</div>');
$('#swin_b').click(function(){
location.href = "<?php echo _URL::_('shop/cart/');?>";
});
$('#swin_t').click(function(){
location.href = "<?php echo _URL::_('shop/cart/');?>";
});
setTimeout(function(){
location.href = "<?php echo _URL::_('shop/cart/');?>";
},5000);
});
}else{
nt.dia= Math.floor(dif/60/60/24);
nt.hora= Math.floor((dif - nt.dia*60*60*24)/60/60);
nt.minuto= Math.floor((dif - nt.dia*60*60*24 - nt.hora*60*60)/60);
nt.segundo= Math.floor(dif - nt.dia*60*60*24 - nt.hora*60*60 - nt.minuto*60);
var sminuto='00';
var ssegundo='00';
if (nt.dia > 0) {
}
if (nt.hora > 0 || nt.dia > 0) {
}
if (nt.minuto > 0 || nt.hora > 0 || nt.dia > 0) {
sminuto = ('0' + String(nt.minuto)).slice (-2);
}
ssegundo = ('0' + String(nt.segundo)).slice (-2);
$('.cartime .m').html(sminuto);
$('.cartime .s').html(ssegundo);
setTimeout(function(){
timeresetcar(ayo, mes ,dia, hora, minuto, segundo );
},1000);
}
}
var data_end='<?php echo $this->cfxParam['cart']['date_end'];?>';
data_end = data_end.split(' ');
time = data_end[1].split(':');
data = data_end[0].split('-');
var ayo = data[0];
var mes = data[1]; //1 = Enero
var dia = data[2];
var hora = time[0];
var minuto = time[1];
var segundo = time[2];
timeresetcar(ayo, mes ,dia, hora, minuto, segundo );
</script>
el caso es que la fecha la la tomo del servidor y esta retrasado cuando el usuario entra automaticamente le dice que su carrito ha caducado
no se me ocurre nada para cronometrar el tiempo del servidor con la hora local de cada cliente gracias
__________________ Sobran las ideas cuando faltan ganas de trabajar en ellas Lynxcraft |