|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.05.2009, 00:47 | #1 |
beneto.ru
Форумчанин
Регистрация: 09.03.2009
Сообщений: 174
|
Смена скина сайта на PHP
В общем не получается сделать нормально смену скина (оформления страниц) на сайте на PHP. Сперва делал через куки,теперь делаю через сессию,но при нажатии на ссылки на сайте,скин сам меняется.
Форма для выбора скина: Код HTML:
<form action="<? echo $_SERVER['PHP_SELF']; ?>" method="post" name="stl"> <select name="styleid"> <optgroup label="Выбор стиля"> <option value="white" >-White</option> <option value="black" >-Black</option> </optgroup> </select> <input type="submit" name="submit" value="OK"> </form> Я написал,но там такой бред уже,что даже не выкладываю. не важно как писать скрипт: с куками или с сессией,нужно чтоб работал... upd: Нужно просто менять файлы CSS и всё при определённом выборе Если кто писал такое, подскажите как правильно это всё организовать или дайте готовый О_о Последний раз редактировалось Jensi; 05.05.2009 в 00:49. |
05.05.2009, 04:21 | #2 |
Банхаммер
Участник клуба
Регистрация: 17.02.2007
Сообщений: 1,754
|
т.к. у тебя всего 2 скина можно сделать через if, но лучше я думаю делать через switch т.к. при добавлении нового скина будет проще сделать... задаешь в сессии переменную style и передаешь ей значения либо 0 либо 1 и в зависимости от этого значения приписываешься в
PHP код:
Последний раз редактировалось KORN; 05.05.2009 в 04:24. |
05.05.2009, 12:36 | #3 | |
Пользователь
Регистрация: 09.10.2008
Сообщений: 92
|
Цитата:
2. Какой скин выбран видно в $_POST['styleid']. 3. Сохранить его можно с помощью PHP код:
в скрипте, который обрабатывает действие PHP код:
Код HTML:
<link rel="stylesheet" type="text/css" href="/css/<?php echo $css ?>.css" />
SPRINTHOST.RU — вот, что я люблю ;-)
|
|
06.05.2009, 00:18 | #4 |
beneto.ru
Форумчанин
Регистрация: 09.03.2009
Сообщений: 174
|
cronfy,спасибо конечно,но я тоже самое сделал через if-else тогда,но проблема в том,что при переходе по ссылкам скин ставится на дефолтный,т.е. я зашёл на сайт и скин по дефолту белый,нажал на чёрный скин и он поставился, но при переходе по ссылкам(в этом же файле) скин опять становится белым! Тоже самое и с куками происходит
Я думал,что я не могу сделать смену скина,а оказалось,что всё правильно и я делал. Думал,может сессия пропадает,но если и на куках так,то я не знаю что ещё можно сделать... p.s.: скрипт переделал: PHP код:
Будут ещё идеи по поводу таких вещей интересных? Последний раз редактировалось Jensi; 06.05.2009 в 00:20. |
06.05.2009, 01:02 | #5 |
Пользователь
Регистрация: 09.10.2008
Сообщений: 92
|
Тогда надо смотреть, куда куки пропадают (сессии ведь тоже на куках работают). Протестируй отдельно, проставляются ли куки (может, в браузере заблокировано), сохраняются ли файлы сессиий (может, директория для файлов сессий указана неверно). В error_log тоже стоит заглянуть.
Самый тривиальный способ проверки: PHP код:
И F5, F5, F5...
SPRINTHOST.RU — вот, что я люблю ;-)
Последний раз редактировалось cronfy; 06.05.2009 в 01:06. |
08.05.2009, 08:10 | #6 |
beneto.ru
Форумчанин
Регистрация: 09.03.2009
Сообщений: 174
|
Всё работает с этим скриптом, выводит в массиве рандомные числа примерно и пишет "i am session variable".
Но смена скина переключается назад во всех браузерах,а не только в одном, я сам не знаю, что это может быть Скрипты верные,а оно так делает,может на хостинге попробовать?!) |
08.05.2009, 14:08 | #7 |
Дон Кихот
Форумчанин
Регистрация: 17.01.2008
Сообщений: 130
|
cookie прописываются только !после! обновления страницы, а в сессии данные сразу попадают... а сам на такое постоянно попадаюсь...
|
08.05.2009, 15:41 | #8 | |
beneto.ru
Форумчанин
Регистрация: 09.03.2009
Сообщений: 174
|
Цитата:
Сегодня буду париться с этой всей фигнёй,вплоть до переменных |
|
10.05.2009, 00:41 | #9 |
beneto.ru
Форумчанин
Регистрация: 09.03.2009
Сообщений: 174
|
Вот рабочий скрипт:
PHP код:
Код HTML:
<form action="" name="themechanger" method="post"> <select name="select" id="select"> <?php for($i = 0; $i < sizeof($stylesarray); $i++): ?> <option value="<?php echo $stylesarray[$i]; ?>" <?php if($stylesarray[$i] == $_SESSION['themez']) echo "selected"; ?> onClick="this.form.submit();">Тема <?php echo $stylesarray[$i]; ?></option> <?php endfor; ?> </select> </form> Последний раз редактировалось SkyM@n; 10.05.2009 в 22:32. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Смена скина AlphaControls | ScreN | Компоненты Delphi | 53 | 25.06.2013 06:03 |
Глюк из-за скина | Altera | Свободное общение | 5 | 11.05.2008 07:01 |
Интеграция сайта с платежной системой (PHP) | AndreyAndrey | Фриланс | 1 | 02.11.2007 01:41 |
Насчёт скина | JoanM | Win Api | 5 | 16.04.2007 16:45 |