В настоящее время я пытаюсь создать свой собственный переключатель стилей CSS для моей основной интрасети.
Это не очень важно, но я знаю, что у пары сотрудников немного плохое зрение и они думают, что высококонтрастный стиль может быть полезным.
Вот мой идеал и способ, которым я пытался реализовать до сих пор.
По сути, у меня уже есть база данных mysql, в которой хранятся данные о входе пользователя в систему и другие незначительные предпочтения, касающиеся сайта. Я хотел бы иметь дополнительный столбец для предпочтения стиля и иметь простую страницу в пользовательской области, где пользователь может просматривать, выбирать и применять стиль.
Очевидно, что было бы хорошо, если бы пользователь сначала выбирал стиль, он применял его к странице, чтобы его можно было увидеть в действии, а затем подтвердил, если это то, что выбрал пользователь.
То, что я пытался сделать до сих пор:
По сути, когда пользователь вошел в систему, он создал переменную сеанса, которая содержит значение столбца «style» для этого пользователя. Я пошел с цифрами для теста, с выбором 3 стилей, 1, 2 и 3. Затем в разделе заголовка страницы, для href таблицы стилей, я добавил PHP, который оценивал переменную сеанса и повторял таблицу стилей на основании того, что было установлено.
Это сработало, таблица стилей отличалась в зависимости от того, что было в таблице mysql для столбца стилей. На странице пользовательских настроек я немного развалился. Я создал небольшую форму с 3 кнопками выбора радио, по одной для каждого стиля. Единственный способ, с помощью которого я смог увидеть это, - отправка формы в файл PHP, который обновляет таблицу на основе выбора.
Основная проблема, с которой я сталкиваюсь, заключается в том, что пользователь должен выйти из системы и войти обратно, чтобы изменения вступили в силу. Мне нужна установка, в которой изменение происходит на месте или при обновлении.
Я мог бы пойти с куки, но я бы предпочел избежать, если это возможно. Не знаете, есть ли у кого-нибудь какие-либо предложения помочь мне или есть какие-то заранее написанные сценарии, которые могли бы выполнить это?
Большое спасибо
Под ред