Foros del Web » Programando para Internet » PHP »

En fecha predeterminada abrir otro index

Estas en el tema de En fecha predeterminada abrir otro index en el foro de PHP en Foros del Web. Buenos días: Como hacer para que el index actual, cuando llegue una fecha predeterminada ( ej: 1/1/18) el servidor muestre otro index distinto. Muchas gracias ...
  #1 (permalink)  
Antiguo 20/12/2017, 07:45
 
Fecha de Ingreso: julio-2014
Ubicación: Donde me lleve el tiempo
Mensajes: 45
Antigüedad: 10 años, 4 meses
Puntos: 0
En fecha predeterminada abrir otro index

Buenos días:
Como hacer para que el index actual, cuando llegue una fecha predeterminada ( ej: 1/1/18) el servidor muestre otro index distinto.
Muchas gracias y saludos
Jdel
  #2 (permalink)  
Antiguo 20/12/2017, 07:50
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: En fecha predeterminada abrir otro index

Código PHP:
Ver original
  1. $fecha = date("Y-m-d");
  2. if(fecha=="2018-01-01"){
  3.   header('location:indexB.php';
  4. }

algo así podría ser, pero recuerda que debes programar para que la fecha sea la del usuario y no la de tu servidor
__________________
[email protected]
HITCEL
  #3 (permalink)  
Antiguo 20/12/2017, 08:08
 
Fecha de Ingreso: julio-2014
Ubicación: Donde me lleve el tiempo
Mensajes: 45
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: En fecha predeterminada abrir otro index

Super rápida respuesta!
Quien dice 20 dice 21: como sería programado para que sea la del usuario?
De antemano mil gracias
Jdel
  #4 (permalink)  
Antiguo 20/12/2017, 08:26
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: En fecha predeterminada abrir otro index

Código PHP:
Ver original
  1. $timezone = "America/Caracas";
  2. echo date("Y-m-d H:i:s");

de esta manera se formatea la fecha y hora a la zona horaria del usuario que utilice la web, por ejemplo, imagina que el server compartido esta en canada y se conecta un usuario en argentina, las fechas y horas ingresadas o registradas en tu base no van a coincidir con la del usuario, por las diferencias horarias.

LISTADO DE ZONAS HORARIAS

Tambien podrias utilizar un servicio de localización por IP para hacer más dinamico el asunto:

Código PHP:
Ver original
  1. //retorna la fecha formateada a la zona horaria indicada por las funciones anteriores
  2. public function date($time=null){
  3.         if($time == null){
  4.             $timezone = $this->city($this->IPreal())->timezone;
  5.         }else{
  6.             $timezone = $time;
  7.         }
  8.         date_default_timezone_set($timezone);
  9.         return date("Y-m-d H:i:s");
  10.     }//END
  11.  
  12. //retorna la ip del usuario
  13. public function IPreal() {
  14.         if (!empty($_SERVER['HTTP_CLIENT_IP']))
  15.             return $_SERVER['HTTP_CLIENT_IP'];
  16.  
  17.         if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
  18.             return $_SERVER['HTTP_X_FORWARDED_FOR'];
  19.  
  20.         return $_SERVER['REMOTE_ADDR'];
  21.        
  22.     }//fin funcion IPreal
  23.  
  24. //Recibe como parametro la ip a verificar
  25. public function city($X){
  26.         $reader = new Reader(__DIR__.'/GeoLite2-City.mmdb');
  27.        
  28.         $data = $reader->city($X);
  29.        
  30.         $out = (object) array(
  31.             'isoCode'   => $data->country->isoCode,
  32.             'nombre'    => $data->country->name,
  33.             'estado'    => $data->mostSpecificSubdivision->name,
  34.             'isoEstado' => $data->mostSpecificSubdivision->isoCode,
  35.             'ciudad'    => $data->city->name,
  36.             'postal'    => $data->postal->code,
  37.             'latitud'   => $data->location->latitude,
  38.             'longitud'  => $data->location->longitude,
  39.             'timezone'  => $data->location->timeZone,
  40.         );
  41.         return $out;
  42.     }

de AQUI puedes descargarte las bases de datos de geolite para verificar las ip y seguir las instrucciones para su uso con php, esas funciones las utilizo dentro de una clase en codeigniter, pero facilmente puedes adaptarlas a tu trabajo.
__________________
[email protected]
HITCEL
  #5 (permalink)  
Antiguo 20/12/2017, 08:30
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: En fecha predeterminada abrir otro index

AQUI el repositorio del geolite para instalar con composer y configurar su uso. Saludos
__________________
[email protected]
HITCEL
  #6 (permalink)  
Antiguo 20/12/2017, 09:13
 
Fecha de Ingreso: julio-2014
Ubicación: Donde me lleve el tiempo
Mensajes: 45
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: En fecha predeterminada abrir otro index

Realmente agradecido, trabajaré sobre esta info.
Que tengan una muy Feliz Navidad todos.
Jdel
  #7 (permalink)  
Antiguo 20/12/2017, 17:36
Avatar de carlillos  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 245
Antigüedad: 17 años, 9 meses
Puntos: 21
Respuesta: En fecha predeterminada abrir otro index

Las bases de datos de geolocalización de Maxmind no suelen ser tan precisas a menos que pagues, por ahí hay algunos que ofrecen API gratis como myip.com.
Saludos.
  #8 (permalink)  
Antiguo 20/12/2017, 19:25
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: En fecha predeterminada abrir otro index

Cita:
Iniciado por carlillos Ver Mensaje
Las bases de datos de geolocalización de Maxmind no suelen ser tan precisas a menos que pagues, por ahí hay algunos que ofrecen API gratis como myip.com.
Saludos.
Buena opción si solo quieres saber el país de origen y el iso code, pero para otros parámetros como geolocalización o zona horaria por ejemplo, incluso la posible ciudad de conexión (no siempre es la que es, pero también depende del ISP) , maxmind es mejor, incluso la gratuita es excelente para brindar esos parámetros.

__________________
[email protected]
HITCEL

Etiquetas: fecha, index, predeterminada
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 11:26.