Foros del Web » Programando para Internet » PHP »

Cambiar el css segun la hora

Estas en el tema de Cambiar el css segun la hora en el foro de PHP en Foros del Web. Hola, a ver si me podeis echar una mano, me gustaria cambiar la hoja de estilos segun la hora del dia. Despues de buscar encontre ...
  #1 (permalink)  
Antiguo 22/08/2010, 15:13
Avatar de wolfmoon  
Fecha de Ingreso: octubre-2007
Mensajes: 189
Antigüedad: 16 años, 6 meses
Puntos: 2
Cambiar el css segun la hora

Hola, a ver si me podeis echar una mano, me gustaria cambiar la hoja de estilos segun la hora del dia.

Despues de buscar encontre este codigo:

Código PHP:
<link rel=”stylesheet” type=”text/css” href=”
<?php
$hour 
date(”H”);
if (
$hour <12) echo “morning.css”;
elseif (
$hour <20) echo “day.css”;
else if (
$hour <4) echo “night.css”;
?>
/>
Pero no me funciona, alguna idea? Gracias.
  #2 (permalink)  
Antiguo 22/08/2010, 15:31
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Respuesta: Cambiar el css segun la hora

Hola.

Debería funcionarte. Igual ten en cuenta que es la hora del servidor que puede ser diferente a la hora local. Vamos a emprolijarlo un poco, y cambiarle las comillas que pueden ser el problema:

Código PHP:
<?php 
  $hour 
date("H"); 
  if(
$hour<12$css="morning.css"
    elseif(
$hour<20$css="day.css";
    elseif(
$hour<4$css="night.css";
?>
<link rel="stylesheet" type="text/css" href="<?=$css?>" />
Luego debes crear tres archivos, morning.css, day.css y night.css.

Saludos!
  #3 (permalink)  
Antiguo 22/08/2010, 16:23
Avatar de wolfmoon  
Fecha de Ingreso: octubre-2007
Mensajes: 189
Antigüedad: 16 años, 6 meses
Puntos: 2
Respuesta: Cambiar el css segun la hora

Gracias por la respuesta.

Ahora parece que si funciona, aunque me coge la hoja de <12.

Tambien me salta este aviso:

Código PHP:
Warningdate() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Paris' for '2.0/DST instead in C:xampphtdocselabcwebindex.php on line 22 
  #4 (permalink)  
Antiguo 22/08/2010, 16:37
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Respuesta: Cambiar el css segun la hora

Hola

Deberás esperar para probarlo. De todos modos puede que no te tire el css correcto por ese warning. Lo que sucede es que no han configurado el huso horario del servidor, puedes configurarlo en tu script con la función date_default_timezone_set().

Saludos
  #5 (permalink)  
Antiguo 22/08/2010, 17:00
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 14 años, 9 meses
Puntos: 4
Respuesta: Cambiar el css segun la hora

jajaj que interesante que es esto! =)
  #6 (permalink)  
Antiguo 22/08/2010, 17:05
Avatar de De_la_Cuesta_13  
Fecha de Ingreso: abril-2009
Ubicación: Cali, Colombia.
Mensajes: 265
Antigüedad: 15 años
Puntos: 14
Respuesta: Cambiar el css segun la hora

Cita:
Iniciado por wolfmoon Ver Mensaje
Código PHP:
if ($hour <12) echo “morning.css”;
else if (
$hour <4) echo “night.css”
__________________
Sólo quien nunca nada hace, nunca se equivoca.
  #7 (permalink)  
Antiguo 22/08/2010, 17:14
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Respuesta: Cambiar el css segun la hora

Si, no? jejeje

Código PHP:
if($hour<=4||$hour>=20$css="night.css";
elseif(
$hour>4&&$hour<12$css="morning.css";  
elseif(
$hour>=12&&$hour<20$css="day.css"

Etiquetas: css
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:30.