Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > смена дизайна


Автор: fear the japan 10.3.2005, 12:46
лазил по инету и нашёл сайт http:// ***.com.ru и там можно изменять дизайн сайта вот вопрос как он это сделал?

Модератор: похоже на рекламу.

Автор: skalex 10.3.2005, 12:52
Подключение разных стилевых файлов.

Автор: IZ@TOP 10.3.2005, 13:03
Создаешь разные шаблоны, кладешь в папку skin/green, skin/orange файлы HTML файлы шаблонов, потом из index.php подключаешь шаблон в зависимости от выбора поьзователя. Информацию о том какой шаблон выбрал юзер, хранишь в cookie:
Код
if(isset($_POST['choise_skin'])) { // Если пользователь выбрал скин, записываем его в куки и обнавляем страницу.
    setcookie('use_skin', $_POST['choise_skin'], time() + 3600 * 24 * 30);
    header('location: index.php');
    exit;
}

// Далее проверяем существует ли кука, с указаниме выбранного скина
$use_skin = (isset($_COOKIE['use_skin'])) ? $_COOKIE['use_skin'] : 'default';

//После чего подключаем файл из папки выбранного 9или установленного по умолчанию) скина

include('skin'.$use_skin.'index.html');


Ну а если тебе нужно сменить только стили (шрифты, цвета фонов), то делай так как сказал Mace.

Автор: fear the japan 10.3.2005, 13:20
тоесть есть

Код

       <select name="select"  class="inup">
<option value="1.css">[1]</option>
<option value="2.css">[2]</option>
        </select>

и есть
Код

<link rel=stylesheet href=css.css type=text/css>


и как их соединить?

Автор: fear the japan 11.3.2005, 07:21
smile

Автор: Opik 11.3.2005, 08:27
Тебе и так примеры дали, что ещё надо?

Автор: fear the japan 11.3.2005, 08:58
сложный пример!

Автор: skalex 11.3.2005, 09:50
Тогда вот пример посложнее smile :
Файл index.html
Код
<html>
<head>
<link id="css" href="white.css" rel="stylesheet" type="text/css" />
</head>
<script type="text/javascript">
function switchStyle() {
   var current = document.getElementById('current');
   var css = document.getElementById('css');
   css.href = current.value + '.css';
}
</script>
<select id="current" onchange="switchStyle();">
 <option value="white">white</option>
 <option value="red">red</option>
 <option value="green">green</option>
 <option value="blue">blue</option>
</select>
</html>


Файл white.css
Код
body { background-color: white; }


Файл red.css
Код
body { background-color: red; }


Файл green.css
Код
body { background-color: green; }


Файл blue.css
Код
body { background-color: blue; }


P.S. Я даже догадываюсь, какой будет следующий вопрос... smile

Автор: fear the japan 11.3.2005, 10:33
P.S. Я даже догадываюсь, какой будет следующий вопрос...
и какой?

Автор: skalex 11.3.2005, 11:43
Вы получили ответ на Ваш вопрос ? smile

Автор: AtomoS 6.9.2009, 11:47
skalex, а можно такое на php сделать? типа function switchStyle() а то не люблю ява крипты...
желательно чтобы с куками работало..

Автор: awers 6.9.2009, 12:16
AtomoS, php серверный язык. На клиенте без клиентского языка программирования ты ничего не сделаешь.

Автор: Ипатьев 6.9.2009, 12:28
AtomoS, в этом топике есть решение для php.
Почему бы его не прочитать?

Автор: AtomoS 6.9.2009, 12:46
Собственно прописал это на страничке:
Код

if(isset($_POST['choise_skin'])) { // Если пользователь выбрал скин, записываем его в куки и обнавляем страницу.
    setcookie('use_skin', $_POST['choise_skin'], time() + 3600 * 24 * 30);
    header('location: index.php');
    exit;
}

// Далее проверяем существует ли кука, с указаниме выбранного скина
$use_skin = (isset($_COOKIE['use_skin'])) ? $_COOKIE['use_skin'] : 'style';

//После чего подключаем файл из папки выбранного 9или установленного по умолчанию) скина

echo('<link href="data/'.$use_skin.'.css" rel="stylesheet" type="text/css" />');


А как теперь ставить другие стили с помощью:
Код

<select id="style"><option value="style1">Стандартный</option><option value="style2">Другой</option></select>

?

Автор: Ипатьев 6.9.2009, 13:07
Если вы не знаете и PHP тоже, то лучше делать на яваскрипте.

Автор: AtomoS 6.9.2009, 13:55
Ипатьев, вы о чём.. извините но я не понял..
сказали - посмотрел, изменил - работает...
а как методы посылать через select я не понял..

Автор: Ипатьев 6.9.2009, 14:10
какие методы? через форму можно послать только строку символов. 
какая проблема передать название стиля через форму?

Автор: AtomoS 6.9.2009, 14:18
Я не знаю как это реализовать..

Автор: Ипатьев 6.9.2009, 14:23
Если не знаете, то тогда все равно на каком языке делать. Попробуйте яваскриптом.

Автор: bars80080 6.9.2009, 15:41
Цитата(AtomoS @  6.9.2009,  12:46 Найти цитируемый пост)
А как теперь ставить другие стили с помощью:
    
<select id="style"><option value="style1">Стандартный</option><option value="style2">Другой</option></select>

при выборе нудного стиля производить перезагрузку страницы с параметром

в данном случае осталось добавить:

Код

<select id="style" onchange="window.location='http://server.ru/page.php?choise_skin='+this.options[this.selectedIndex].value;">

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)