Aplicar estilos con valor de cookie
Publicado por Álvaro (22 intervenciones) el 19/11/2019 00:56:02
Buenos días / tardes / noches. Estoy continuando el proyecto de la tienda de libros online, y ahora mismo lo único que me queda es aplicar el uso de una cookie y de una sesión. Con respecto a la cookie, tengo "implementado" un cambio de tema de la página entre claro y oscuro. Teniendo el siguiente select en HTML5:
Llamo al archivo especificado, donde creo la cookie con el estilo correspondiente a la elección del usuario:
El tema es que me funciona, pero debo pulsar dos veces el botón para que se apliquen los cambios, sinceramente no sé por qué no se aplica el color simplemente obteniendo el valor de la cookie. Agradecería cualquier ayuda / consejo
Muchas gracias, y un saludo
1
2
3
4
5
6
7
8
<form action="../controller/Personalitation/ConfiguracionTema.php" method="post">
<select name="tema" style="background-color: lightgray">
<option>Claro</option>
<option>Oscuro</option>
</select>
<button type="submit" class="btn btn-dark"><span style="color: snow;">Cambiar tema</span>
</button>
</form>
Llamo al archivo especificado, donde creo la cookie con el estilo correspondiente a la elección del usuario:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$estiloBody = null;
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST["tema"])) {
$estiloBody = determinarTema($_POST["tema"]);
setcookie("tema", $estiloBody);
}
}
function determinarTema($tema)
{
if ($tema === "Oscuro") {
return "background-color: rgba(0, 0, 0, .85); color: rgba(255, 255, 255, .85);";
} else {
return "background-color: rgba(255, 255, 255, .85); color: rgba(0, 0, 0, .85);";
}
}
El tema es que me funciona, pero debo pulsar dos veces el botón para que se apliquen los cambios, sinceramente no sé por qué no se aplica el color simplemente obteniendo el valor de la cookie. Agradecería cualquier ayuda / consejo
Muchas gracias, y un saludo
Valora esta pregunta


0