sábado, 11 de mayo de 2024

Descubre cómo determinar si un día es festivo en Colombia (o cualquier país) utilizando PHP

 


Para determinar si un día es festivo en Colombia utilizando PHP, generalmente necesitarías una lista de días festivos colombianos y luego comparar la fecha dada con esa lista. Aquí un ejemplo de cómo podrías hacerlo utilizando un array de días festivos que puedes reemplazar según los del país de tu interés:

function esFestivo($fecha) {

    $festivos = array(

        // Aquí se incluirían los días festivos colombianos en formato 'mes-día'

        '01-01', // Año Nuevo

        '01-06', // Día de los Reyes Magos

        '03-19', // Día de San José

        '04-01', // Jueves Santo

        '05-01', // Día del Trabajo

        '05-17', // Ascensión de Jesús

        '06-07', // Corpus Christi

        '06-14', // Sagrado Corazón

        '07-02', // Día del Sagrado Corazón

        '07-20', // Grito de Independencia

        '08-07', // Batalla de Boyacá

        '08-15', // Asunción de la Virgen

        '10-12', // Día de la Raza

        '11-01', // Día de Todos los Santos

        '11-11', // Independencia de Cartagena

        '12-08', // Inmaculada Concepción

        '12-25', // Navidad

    );


    $fecha_formato = date('m-d', strtotime($fecha));

    return in_array($fecha_formato, $festivos);

}


// Ejemplo de uso

$fecha = '2024-07-20'; // Fecha que deseas verificar si es festivo

if (esFestivo($fecha)) {

    echo "El $fecha es un día festivo en Colombia.";

} else {

    echo "El $fecha no es un día festivo en Colombia.";

}


sábado, 4 de mayo de 2024

Cómo Implementar Autenticación Básica en PHP para una Web o Script Seguro



La seguridad en línea es esencial, especialmente al proteger áreas restringidas como el panel de administración de tu blog o web. Con este código podrás implementar la autenticación básica en PHP para garantizar que solo los usuarios autorizados puedan acceder:

$expected_username = 'abc'; // Nombre de usuario esperado

$expected_password = '123'; // Contraseña esperada


// Verificar las credenciales

if (!isset($_SERVER['PHP_AUTH_USER']) || $_SERVER['PHP_AUTH_USER'] !== $expected_username || $_SERVER['PHP_AUTH_PW'] !== $expected_password) {

    // Solicitar credenciales

    header('WWW-Authenticate: Basic realm="autopoder.free.nf"');

    header('HTTP/1.0 401 Unauthorized');

    echo 'Error de autenticación';

    exit;

}

martes, 19 de diciembre de 2023

Botón copiar texto en html hacia el portapapeles

 


Para crear la opción de copiar texto en html ya sea un código, pin, etc se debe crear el siguiente javascript:


<script>

    function copy() {

      const el = document.createElement('textarea');

      el.value = document.getElementById("pin_text").innerHTML.split(":")[1].trim();

      el.setAttribute('readonly', '');

      el.style.position = 'absolute';

      el.style.left = '-9999px';

      document.body.appendChild(el);

      el.select();

      document.execCommand('copy');

      document.body.removeChild(el);

    }

  </script>


El html debería tener algo como esto:


<h2 id="pin_text">Sigue disfrutando tu servicio. Este es tu PIN/CUPON de acceso: 1234ABCD</h2>

<a style="text-decoration: underline;" href="javascript:copy();">COPIAR PIN</a>


La función javascript "copy" en este caso separaría el texto encontrado en id="pin_text" y lo separaría por el caracter ":" y el dato que encuentre, en este caso "1234ABCD" se copiaria en el portapapeles.

jueves, 2 de noviembre de 2023

¡Duplica la Velocidad de tu Internet! Descubre Cómo con DNS

Duplicar velocidad internet

Para mejorar notablemente el acceso a sitio web debes hacer uso de los DNS disponibles para este fin.

Actualmente los más rápidos son:

9.9.9.9 y 149.112.112.112

Para configurarlos debes ir a las propiedades de tu adaptador de red:

Propiedades de red

Luego seleccionar "Protocolo de Internet versión 4 (TPC/IPv4)":

Protocolo IPv4

Luego cambiar las direcciones de servidor DNS:

DNS

Finalmente Aceptar y ejecutar los siguientes comandos:

1. ipconfig /release 
2. ipconfig /flushdns 
3. ipconfig /registerdns
4. netsh winsock reset

Reinciar el PC


Existen otros DNS con los cuales puedes probar como, por ejemplo:



jueves, 5 de octubre de 2023

Aprovechar todo el ancho de banda de Internet en Windows 10 por línea de comandos

 


Para aprovechar todo el ancho de banda de Internet en Windows 10 por línea de comandos, puedes ajustar la configuración de ancho de banda reservado utilizando el comando `netsh`. Windows 10, por defecto, reserva un cierto porcentaje del ancho de banda para las actualizaciones y tareas del sistema. Puedes reducir o eliminar esta reserva mediante los siguientes pasos:


1. Abre una ventana de línea de comandos con privilegios de administrador. Para hacerlo, busca "cmd" en el menú Inicio, haz clic derecho en "Símbolo del sistema" o "Command Prompt" y selecciona "Ejecutar como administrador".


2. Para verificar la configuración actual de ancho de banda reservado, ejecuta el siguiente comando:



   netsh interface tcp show global



   Esto mostrará la configuración actual de Windows.


3. Para eliminar la reserva de ancho de banda, puedes establecer el límite en 0. Ejecuta el siguiente comando:



   netsh interface tcp set global autotuning=disabled



   Esto desactivará la reserva de ancho de banda.


4. También puedes intentar cambiar la escala de ventana de recepción para permitir un mayor rendimiento en conexiones de alta velocidad. Ejecuta el siguiente comando:



   netsh interface tcp set global autotuninglevel=experimental



5. Para asegurarte de que los cambios surtan efecto, reinicia tu computadora.


Ten en cuenta que hacer estos cambios puede tener un impacto en la forma en que tu sistema maneja el tráfico de red y puede afectar el rendimiento de las actualizaciones de Windows y otras tareas del sistema que dependen de la reserva de ancho de banda. Por lo tanto, es importante ser cauteloso al ajustar estos valores y monitorear el rendimiento de tu sistema después de realizar estos cambios. Si experimentas problemas, puedes revertir los cambios utilizando los comandos apropiados o restaurando la configuración predeterminada.

lunes, 29 de mayo de 2023

Conocer cual slider es visible en un carrusel con jquery

 


Para identificar cual slider es visible dentro de un carrusel con jquery se debe tener en cuenta el cálculo de cuantos slider existen en dicho carrusel.

Finalmente asignar a cada slider un id que lo identifique.

La clave es la propiedad aria-hidden de cada slider que en caso de ser false, es porque el slider está siendo visible para el usuario.

Crear un bucle for basado en el número de slider en el carrusel y comparar cual de estos, mediante el id, tiene la propiedad aria-hidden en false.

Con este id se puede crear un campo hidden en un form para enviarlo por get o post.

El siguiente ejemplo es válido para un carrusel cuyos slider tienen valores que necesitamos conocer cual es el de interés del usuario.

Jquery:

<script>

$(document).ready(function() {

var tslides = $('.slide').children().length; // Permite conocer la cantidad de sliders creados


$(document).click(function(event) { // Verifica que se ha presionado clic en el carrusel o se la deslizado a izquierda o derecha

for (let i = 1; i <= tslides; i++) { // Bucle de 1 a cantidad de sliders

if ($('#s' + i).attr('aria-hidden') == 'false') { // Comparar cual está visible

$('#pid').val(i); // Asignar a input el valor del id visible

}

}

});

});

</script>


html 

<div class="slide" id="s1">

<ul>

<li class="logo"><img src="images/icono1.png'"></li>

<li class="precio">$10 USD</li>

</ul>

</div>


<div class="slide" id="s2">

<ul>

<li class="logo"><img src="images/icono2.png'"></li>

<li class="precio">$6 USD</li>

</ul>

</div>

<input type="hidden" name="pid" id="pid"> // Aquí el campo que contiene el id del slide visible

jueves, 6 de abril de 2023

Agilizar inicio y apagado de Windows 10

 

Agilizar inicio y apagado de Windows 10

Para agilizar el inicio/apagado de Windows 10 se recomienda seguir los siguientes pasos:

1. Escribe "regedit" en la ventana Ejecutar y presiona "Enter".

2. En el Editor del Registro, navegua hasta la clave: "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control"

3. Doble clic en el valor "WaitToKillServiceTimeout".

4. Cambia el valor predeterminado por 1000.

5. Navegua hasta la siguiente clave: "HKEY_CURRENT_USER\Control Panel\Desktop"

6. Doble clic en el valor "HungAppTimeout".

7. Cambia el valor predeterminado por 1000.

8. Reinicia el sistema.

Estas dos claves del Registro de Windows, "WaitToKillServiceTimeout" y "HungAppTimeout", controlan el tiempo que Windows espera antes de cerrar una tarea o un servicio que no responde durante el inicio del sistema.

Modificar estos valores en el Registro de Windows puede ayudar a optimizar el tiempo de inicio del sistema, pero es importante tener en cuenta que hacer cambios en el Registro de Windows puede afectar el rendimiento y la estabilidad del sistema. Por lo tanto, se recomienda hacer una copia de seguridad del Registro antes de realizar cualquier cambio y proceder con precaución.