Buenas,
Estoy intentando comprender un poco la forma de uso de las COOKIES en PHP. Lo estoy intentando implementar en mi web simplemente para que aparezca un mensaje de aviso de que estoy usando cookies en la web, pero una vez aceptado el mensaje no quiero que aparezca cada vez que se carga la página. Es por ello que estoy usando cookies. El problema que me encuentro, es que si es la primera vez que entro, me dice que la variable no existe. Una vez aceptado el mensaje, el valor de la Cookie pasa a un valor, y entonces no hay problema.
¿Tengo que iniciar la COOKIE de alguna forma? Le estoy dando vueltas, pero si la inicializo, ¿no estaría machando el valor que tiene en el servidor? Me estoy haciendo un lío imagino, pero no lo acabo de entender.
Para saber si tengo que mostrar el mensaje o no, cuando se acepta el mensaje, a través de JS entrego la COOKIE:
Insertar CODE, HTML o PHP:
document.cookie = "leido_cookie=Si";
Y con PHP, para mostrar o no el mensaje en función de su valor tengo esto:
Insertar CODE, HTML o PHP:
<?php if (htmlspecialchars($_COOKIE["leido_cookie"]) != "Si"): ?>
<div id='ocultardiv'>
<p>Utilizamos "cookies" para ofrecerte una mejor experiencia de servicio. Al navegar o utilizar nuestros servicios, aceptas el uso que hacemos de las "cookies".</p>
<div style="width:auto;margin-top:15px;">
<input type="checkbox" name="checkbox" id="cookies_aceptar" value="value" onclick='ocultar()'>
<label id="label_cookies" for="cookies_aceptar">Aceptar</label>
<a class="mas_info_coookies" href="#">Más información</a>
</div>
</div>
<?php endif; ?>
Funcionar funciona, y en la web no me aparece ese mensaje de que la variable no existe, pero imagino que eso puede dar lugar a problemas (de rendimiento o el que sea).