Buscar en Asptutor     
Demo Tienda Virtual Tutorcar
 Navegacion->Inicio | Active Server Pages  

La web de los recursos y ejemplos de asp

Versión para imprimir

 

Alojado en:


urbe-networks.com

Recomienda esta pagina a un amigo

Servicios Gratuitos

Articulos relacionados

Utilizar GetRows()

Tienda Virtual - Carrito de compra

Messenger a través de BD en ASP

Miniaplicacion de comercio electronico

Objeto Datagrid de ASP.NET en ASP

Acotación de resultados

Tratamiento de Campos Autonumericos

Insertar imágenes en una base de datos

Ejemplos básicos de uso de cookies

Objeto Connection

Adaptación de la hora de un servidor extranjero (II)

Como saber el ultimo dia de un mes

Tratamiento de Campos Autonumericos

El Objeto Response

Control de introducción de caracteres en en formulario

Paginación de registros con XML


Enlaces recomendados

   

Tutorial ASP

Fecha del servidor vs fecha local
Este articulo ha sido leído 42.700 veces

Fecha del servidor vs fecha local

 

Colaboración enviada por Cristian Monzon

Cuando queremos mostrar la fecha actual en nuestra pagina web nos encontramos con la posibilidad
de utilizar la fecha del servidor (con ASP) o la fecha del ordenador cliente (Con JScript o VBScript).

El siguiente script pretende utilizar la hora del ordenador cliente a excepcion que esta se encuentre demasiado
desfazada. Teniendo en cuenta que el maximo desface puede ser de un dia muestro siempre la hora del ordenador
local (Con JavaScript) y solo la del servidor (con ASP) cuando la diferencia por defecto o por exceso es de mas de un dia.

<%Option explicit%>
<HTML>
<HEAD><TITLE>Fecha</TITLE></HEAD>
<BODY>
<%

Dim ArrayFecha,ArrayHora,Anyo,Dia,Fecha,Hora,Mes,Minutos,Segundos

' Obtengo la fecha del servidor 
Fecha=Date()
ArrayFecha = split(cdate(Fecha),"/")

' Obtengo dia, mes y año.
Dia=ArrayFecha(0)
Mes=ArrayFecha(1)
Anyo=ArrayFecha(2)
' Atencion !!! Dado que algunos servidores utilizan el 
'formato de fecha ingles mm/dd/aa la siguiente funcion puede cambiar de la siguiente manera.
' Dia=ArrayFecha(1)
' Mes=ArrayFecha(0)
' Anyo=ArrayFecha(2)

' De hecho mi servidor local tiene configuracion española y 
'la web en donde tengo alojada lo tiene en formato ingles
' lo que me ha obligado a poner un condicion de acuerdo 
'al entorno donde se este ejecutando usando la variable 
' Request.ServerVariables("SERVER_NAME")  :-)

' Obtengo la hora del servidor
Hora=Time()
ArrayHora = split(cdate(Hora),":")
Hora=ArrayHora(0)
Minutos=ArrayHora(1)
Segundos=ArrayHora(2)


function fechaASP()
' Esta funcion devuelve la fecha del servidor en formato largo 
dim meses(12)
meses(0)=""
meses(1)="enero"
meses(2)="febrero"
meses(3)="marzo"
meses(4)="abril"
meses(5)="mayo"
meses(6)="junio"
meses(7)="julio"
meses(8)="agosto"
meses(9)="setiembre"
meses(10)="octubre"
meses(11)="noviembre"
meses(12)="diciembre"
fechaASP=Dia+" de "+meses(Mes)+" del "+Anyo
end function

%>
<br>
<script language="JavaScript">
<!--

function fechaJavaScript(Anyo,Mes,Dia) {
// Esta funcion devuelve la fecha local en formato largo
//NOTA: las siguientes 2 sentencias van juntas en la misma linea
var meses = new Array("","enero","febrero","marzo","abril","
mayo","junio","julio","agosto","setiembre","octubre","noviembre","diciembre")

fechaJavaScript=Dia+" de "+meses[Mes+1]+" del "+Anyo
return fechaJavaScript
}

var hoy = new Date();
var Anyo= hoy.getYear();
var Mes= hoy.getMonth();
var Dia= hoy.getDate();
var Hora=hoy.getHours();
var Minutos=hoy.getMonth();
var Segundos=hoy.getSeconds();
var DiaSemana=hoy.getDay();

// Obtengo la fecha y hora local
//NOTA: las siguientes 2 sentencias van juntas en la misma linea
var TimeLocal = new Date(Anyo,Mes,Dia,Hora,Dia,Segundos);
var TimeServer = new Date(<%=Anyo%>,<%=(Mes-1)%>,<%=Dia%>,<%=Hora%>,
<%=Minutos%>,<%=Segundos%>);

// Calculo la diferencia en milisegundo y lo transformo en dias
var TimeDifference = (TimeLocal - TimeServer)/60/60/24/1000;

// Compruebo que la diferencia de fechas y hora no sea superior o inferior a un dia.
if (Math.abs(TimeDifference)<=1) { 
    // La fecha del ordenador local es razonable. 
document.write("Hoy es: " + fechaJavaScript(Anyo,Mes,Dia))
} else {
// La fecha del ordenador local esta demasiado desfazada. Utilizo la fecha del servidor.
document.write("Hoy es: <%=fechaASP%>")
}
//-->
</script>
</BODY>
</HTML>

 



 

¿Estas empezando y este articulo es muy complejo para tí?
Empieza por el principio, visita Ejemplos Básicos

Puedes obtener un listado completo de todos los artículos y ejemplos de ASP en http://www.asptutor.com/asp/todoslosarticulos.asp
 

Valora este articulo   Malo Excelente  
26 usuarios han valorado este articulo. Valoracion media:

Nota: Para cualquier consulta u opinión sobre este articulo puedes usar los foros

 

 

AspTutor lo hacemos entre todos ¿Como vas a colaborar hoy?


Google

 

Descargas de manuales¦ Ejemplos de código ¦ Artículos mas visitados ¦ Envía tu articulo ¦ Foros ¦
  Libro de visitas ¦Crea un enlace con ASPTutor 
 

    © 2001-Hasta hoy  Pedro Rufo Martín  contactar