Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Стиль
 
 автор: Active   (11.08.2007 в 20:34)   письмо автору
 
 

Как сделать выбор стиля на сайте?

   
 
 автор: Active   (11.08.2007 в 23:33)   письмо автору
 
   для: Active   (11.08.2007 в 20:34)
 

Очень нужно,кто не понял нужно изменить цсс файл через форму.

   
 
 автор: cheops   (12.08.2007 в 00:32)   письмо автору
 
   для: Active   (11.08.2007 в 20:34)
 

Хм... а что вызывает затруднение - передавайте через GET-параметр или сессию флаг, в зависимости от которого подключайте тот или иной CSS-файл
<link href="site.css" rel="stylesheet" type="text/css">

   
 
 автор: Active   (12.08.2007 в 13:30)   письмо автору
 
   для: cheops   (12.08.2007 в 00:32)
 

Всё равно не получается.

   
 
 автор: cheops   (12.08.2007 в 14:03)   письмо автору
 
   для: Active   (12.08.2007 в 13:30)
 

А как реализуете? Через GET-параметры, через сессии? Как выглядит код подключения CSS-файла?

   
 
 автор: Active   (12.08.2007 в 16:18)   письмо автору
 
   для: cheops   (12.08.2007 в 14:03)
 

<?php session_start();
if(isset($_POST['css']))
$_SESSION['css]=$_POST['css'];
if(isset($_SESSION['css']))
$css=$_SESSION['css'];
else
$css='css/main.css'; ?>
Это файл css.php

2)Форма:
<form action="css.php" method="post"><select name="css"><option value="css/green.css">green</option> и так далее.
Я незнаю что писать в txt/css href="?"
Стили лежат в папке /css

   
 
 автор: sim5   (12.08.2007 в 16:55)   письмо автору
 
   для: Active   (12.08.2007 в 16:18)
 

Ну вам ведь для заголовка станицы нужно, значит в итоге должно быть:

<link rel=STYLESHEET href="<?php $css; ?>" type="text/css">

   
 
 автор: Active   (12.08.2007 в 19:56)   письмо автору
 
   для: sim5   (12.08.2007 в 16:55)
 

Не выходит.А имеет значение,что страница состоит из 3 частей.

   
 
 автор: sim5   (12.08.2007 в 20:05)   письмо автору
 
   для: Active   (12.08.2007 в 19:56)
 

Ну как не выходит? Не знаю как у вас там все скрипты страниц выглядят, но у вас в заголовке должно быть в итоге:
<link rel=STYLESHEET href="css/main.css" type="text/css">
т.е. прописан путь и имя файла подключаемого стиля.

   
 
 автор: Active   (12.08.2007 в 20:25)   письмо автору
 
   для: sim5   (12.08.2007 в 20:05)
 

Не пашет.Вот: http://amobile.org.ru

   
 
 автор: sim5   (12.08.2007 в 20:41)   письмо автору
 
   для: Active   (12.08.2007 в 20:25)
 

Стиль у вас подключается (main.css). Претензий к РНР нет. У вас проблемы с самими стилями. Что конкретно не пашет? Что у вас должно быть?

   
 
 автор: Active   (12.08.2007 в 21:01)   письмо автору
 
   для: sim5   (12.08.2007 в 20:41)
 

Нажимаем например на стиль ночь и страница должна измениться.

   
 
 автор: sim5   (12.08.2007 в 21:34)   письмо автору
 
   для: Active   (12.08.2007 в 21:01)
 

Тогда лучше сделать, например, так:

<option value="1">green</option><option value="2">red</option>

Принимайте, проверяйте, затем

$css = "css/white.css" //стиль по умолчанию


Если запрос нового стиля:

switch ($style)
    {
       case 1: $css = "css/green.css";
                     break;
       case 2: $css = "css/red.css";
                     break;
       // и т.д.
    }


Подключаем стиль в заголовок.

   
 
 автор: Active   (12.08.2007 в 23:42)   письмо автору
 
   для: sim5   (12.08.2007 в 21:34)
 

Что в заголовке писать,если не трудно?

   
 
 автор: sim5   (12.08.2007 в 23:45)   письмо автору
 
   для: Active   (12.08.2007 в 23:42)
 

Как что? Стиль, который у вас запросили:

<link rel=STYLESHEET href="Определенный по запросу стиль" type="text/css">

   
 
 автор: Active   (13.08.2007 в 10:01)   письмо автору
 
   для: sim5   (12.08.2007 в 23:45)
 

Написал в заголовке "<?php $css; ?>"
Не выходит.Файл в корневой.

   
 
 автор: Trianon   (13.08.2007 в 10:20)   письмо автору
 
   для: Active   (13.08.2007 в 10:01)
 

Вы издеваетесь, чтоли?
Приводите фрагмент кода полностью. А не обрывок.

   
 
 автор: Active   (13.08.2007 в 10:43)   письмо автору
 
   для: Trianon   (13.08.2007 в 10:20)
 

<link rel="stylesheet" media="all" href="<?php $css; ?>" type="text/css"
Это в заголовке
Это код stil.php:
<?php $css="css/main.css";
switch($style)
{ case 1: $css="css/green.css";
break;
case 2: $css="css/blue.css";
break; } ?>
Это код кидаю в корневую сайта.
Это форма:
<form action="stil.php" method="post"><select name="style"><option value="1">Green</option>...И так дальше.

   
 
 автор: Trianon   (13.08.2007 в 11:10)   письмо автору
 
   для: Active   (13.08.2007 в 10:43)
 

Я вижу две неопределенные переменные.
>Это в заголовке:
<link rel="stylesheet" media="all" href="<?php $css; ?>" type="text/css"

>Это код stil.php - это код кидаю в корневую сайта:
><?php $css="css/main.css";
>switch($style)
>{ case 1: $css="css/green.css";
>break;
>case 2: $css="css/blue.css";
>break; } ?>

>Это форма:
><form action="stil.php" method="post"><select name="style"><option value="1">Green</option>...

>И так дальше.

Подсказка 1. Параметры скриптам передаются в массивах $_GET , $_POST и $_COOKIE
Подсказка 2. данные о выбранном стиле предстоит где-то хранить.

   
 
 автор: Active   (13.08.2007 в 12:45)   письмо автору
 
   для: Trianon   (13.08.2007 в 11:10)
 

Придётся забыть о этой идее.

   
 
 автор: sim5   (13.08.2007 в 13:00)   письмо автору
 
   для: Active   (13.08.2007 в 12:45)
 

Вам не об идее забывать надо, а правильно написать то, чего вы хотите. Я вам для примера написал switch($style), а вы буквальном смысле слова все "честно" переписали, ну надо было бы переменной $style хотя бы присвоить значение $_POST["css"], и так далее...

   
 
 автор: Trianon   (13.08.2007 в 13:16)   письмо автору
 
   для: sim5   (13.08.2007 в 13:00)
 

Человек хочет на халяву и с крабовым маслом.
С другой стороны, раз готов забыть, значит ему не больно-то надо.

   
 
 автор: Active   (13.08.2007 в 13:17)   письмо автору
 
   для: sim5   (13.08.2007 в 13:00)
 

Я новичок.

   
 
 автор: sim5   (13.08.2007 в 14:04)   письмо автору
 
   для: Active   (13.08.2007 в 13:17)
 

Ну новичок, ну ничего страшного в этом нет. Вы просто должны последовательно делать то, чего хотите, а вам надо, в конечном итоге, прописать переменную $css в заголовке, которая определяет стиль страницы. А если не будет запроса на изменения стиля? Значит вашей переменной $css должен быть определен стиль по умолчанию.
Но если приходит запрос на новый стиль, то этой переменной будет определен новый стиль, как вы это сделаете - через switch, либо через if, это уже вопрос другой. В конечном итоге, после всех этих процедур у вас будет следовать запись:

<link rel=STYLESHEET href="<?php $css; ?>" type="text/css">

Если запроса на новый стиль не было, то будет действовать стиль по умолчанию, если был запрос, значит будет установлен новый стиль. Вы видимо нарушаете последовательность, либо действительно один к одному просто переписали предложенное, поэтому и не работатет.
Если вы хотите сделать так, как планировали, т.е. вам передавалось в запросе путь и файл стиля, то не плохо бы было проверять - есь ли у вас такой файл, могут ведь и пошутить :)
Двумя словами - надо думать.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования