Я хочу изменить цветовую схему моей веб-страницы … поэтому я дал подборщику цветов и другим инструментам на своем веб-сайте, и я храню эти значения цвета в базе данных MySql.
но я не могу понять, как я могу применить эти значения стилей из базы данных mysql к css или html-файлу.
например:
значение цвета, сохраненное пользователем-1 в базе данных: #ffffff, а другое значение для пользователя-2: # 000000
как я могу заставить эти значения применяться в css каждый раз, когда пользователь входит в систему. То есть, когда пользователь-1 регистрируется, я хочу, чтобы фон тела был #ffffff, а для iser-2 я хочу, чтобы оно было # 000000
Это можно сделать разными способами. 1. Преобразуйте свой CSS в PHP, т. Е. Генерируется CSS, но все может быть динамичным – возможно, излишним для нескольких цветов. 2. Перезапишите стили в таблице стилей.
Самый простой способ, возможно, не самый лучший, хотя это номер 2, над написанием стиля после таблицы стилей с новым цветом.
т.е. (sudo-код)
<html><head> .... <style ... src="..." /> <style> // from db #custom { background: #<?php echo $colour; ?> } </style>
и т.д
Лучше использовать свой JavaScript для изменения стиля между тегами PHP.
Например:
if($response){ echo "<script> $('#matter_table').css('display', 'block'); </script>"; } else{ echo "<script> $('#matter_table').css('display', 'none'); </script>"; }
Я использую этот трюк:
Я создаю файл dynamics.php и в нем использую:
$color = '#6b82a2'; $css = <<<HERE body{ font-family:Arial, Helvetica, sans-serif; background-color : $color ; background-image: url("../img/texture.png"); } HERE; $bytes = file_put_contents('css/mainCss.css',$css);
вы можете загрузить свои переменные, а затем использовать здесь.
Вы можете достичь этого, выполнив следующие шаги:
Сделайте свой шаблон сайта гибким, если пользователь изменит один стиль, который он должен отразить по всей теме.
Когда пользователь регистрируется, вы можете выбрать цвет этой темы пользователей из db, и вы можете сохранить его на сеансе или любым другим возможным способом.
eg : $themecolor = '#000000';
Передайте этот цвет темы телу в встроенный стиль
eg : style = "background-color : <?php echo $themecolor; ?>"