PHP - Comprobar si el usuario visita la página web por primera vez

PHP – Comprobar si es primera visita

En este post de programación con PHP te enseñaré cómo comprobar si es la primera vez que un usuario entra a nuestra web. Es decir, saber si el usuario visita la página por primera vez o si ya la ha visitado antes.

PHP - Comprobar si el usuario visita la página web por primera vez
PHP – Comprobar si el usuario visita la página web por primera vez

Para esto vamos a usar cookies y la función setcookie de PHP.

Sobre las cookies

Básicamente las cookies son valores que se guardan en el lado del cliente (pero podemos establecer con PHP del lado del servidor) y nos permiten identificar o dejar ciertos valores para rastrear a los usuarios.

Con esto no estoy diciendo que son un riesgo de seguridad; siempre dependerá de los datos que guardemos. En este caso solo vamos a evaluar si un usuario ya ha entrado a nuestra página web o si es la primera vez.

Comprobar si es la primera visita

Para saber si el usuario ha visitado nuestra web vamos a intentar leer la cookie. Si ya existe, entonces sabemos que no es la primera vez que visita nuestra página.

Caso contrario, si la cookie no existe, indicamos que es la primera vez que visita la web y además creamos la cookie para futuras lecturas.

Nota: aquí el valor de la cookie es true, podría ser cualquier valor y de hecho no importa, pues solo estamos leyendo la presencia de la cookie, no su contenido.

<?php
$nombreCookie = "mi_cookie_visitas";
if (isset($_COOKIE[$nombreCookie])) {
    echo "Ya has visitado anteriormente esta página";
    # Enlace para ir al archivo que borra la cookie
    echo "<br><a href='borrar.php'>Borrar la cookie</a>";
} else {
    # Establecemos la cookie para marcar que ya ha venido. Recuerda que debes establecerla
    # antes de imprimir cualquier valor
    # Cuándo expira la cookie? debe expirar en algún momento del futuro. Yo la pondré a 30 días
    $tiempoExpiracion = time() + 60 * 60 * 24 * 30;
    setcookie($nombreCookie, true, $tiempoExpiracion);
    echo "Esta es la primera vez que visitas la página";
}

Con lo que te expliqué anteriormente y los comentarios se explica el código de PHP. Solo presta atención al tiempo de expiración, en este caso debemos establecer un tiempo de expiración. Para el ejemplo lo puse en 30 días, podrían ser más o menos dependiendo de tus necesidades.

Además, en el caso de que el usuario ya haya visitado la página, le mostramos una página para borrar esa cookie. Esto es opcional, pero la he puesto para depurar.

Borrar cookie

El código que borra la cookie queda así:

<?php
$nombreCookie = "mi_cookie_visitas";
# Para eliminar una cookie, se pone la fecha de expiración en una fecha anterior
$tiempoExpiracion = time() - 1;
setcookie($nombreCookie, "", $tiempoExpiracion);
# Y redireccionamos a index.php
header("Location: index.php");

Para borrar el registro de que el usuario ha visitado la página web, establecemos una cookie con un tiempo de expiración que ya haya pasado; y de este modo se elimina.

Finalmente en la línea 7 redireccionamos al index, mismo que debería mostrar el mensaje de que es la primera vez que se visita la página.

Conclusión

Aquí tengo más tutoriales sobre PHP. Si quieres ver el código completo (que en realidad solo son dos archivos) míralos en mi GitHub.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *