Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Общий фон страницы
|
|||
|---|---|---|---|
|
#18+
Таблица с 3 полями: фамилия, имя, дата рождения... Можно выбрать общий фон страницы, и здесь проблемка... В include ("fon1.html") и других всё банально (цвет фона: жёлтый, серый, оранжевый, зелёный). К примеру, <html> <body bgcolor="gray"></body> </html> Когда выбрал цвет фона, допустим жёлтый, а затем кликаю на поле Surnameup или Surnamedown, то фон снова становится белым. Как исправить это? Нужно если выбрал фон, то с ним и работать... Хотя if (isset($_GET['of'])) написано же... <b>Выберите общий фон страницы</b><br><br> <form action="<?php echo $_SERVER['SCRIPT_NAME']; ?>"> <select name="of"> <option value="0" selected>Не выбран</option> <option value="1">Жёлтый</option> <option value="2">Серый</option> <option value="3">Оранжевый</option> <option value="4">Зелёный</option> </select> <input type="submit" value="Выбрать"> </form> <?php if (isset($_GET['of'])) { $of = $_GET['of']; if ($of == '1') include ("fon0.html"); elseif ($of == '2') include ("fon1.html"); elseif ($of == '3') include ("fon2.html"); elseif ($of == '4') include ("fon3.html"); elseif ($of == '0') echo ''; else echo 'Мы не смогли определить общий фон'; } $Mass = array( array('Surname' => 'Ив', 'Name' => 'Иван', 'Birthday' => '1966.01.01'), array('Surname' => 'Хр', 'Name' => 'Денис', 'Birthday' => '1968.02.02'), array('Surname' => 'Ша', 'Name' => 'Николай', 'Birthday' => '1975.03.03'), array('Surname' => 'Че', 'Name' => 'Егор', 'Birthday' => '1976.04.04'), array('Surname' => 'Пр', 'Name' => 'Евгений', 'Birthday' => '1962.05.05'), array('Surname' => 'Ар', 'Name' => 'Илья', 'Birthday' => '1960.06.06'), array('Surname' => 'Пу', 'Name' => 'Александр', 'Birthday' => '1999.07.07'), array('Surname' => 'Ма', 'Name' => 'Антон', 'Birthday' => '1988.08.08'), array('Surname' => 'Жд', 'Name' => 'Александр', 'Birthday' => '1980.09.09'), array('Surname' => 'Ше', 'Name' => 'Виталий', 'Birthday' => '1990.10.10') ); # Шапка таблицы echo ' <table border=1> <tr> <td><a href="?sort=Surname&sort=ascsurname">Surnameup</a> <a href="?sort=Surname&sort=descsurname">Surnamedown</a></td> <td><a href="?sort=Name&sort=ascname">Nameup</a> <a href="?sort=Name&sort=descname">Namedown</a></td> <td><a href="?sort=Birthday&sort=ascbirthday">Birthdayup</a> <a href="?sort=Birthday&sort=descbirthday">Birthdaydown</a></td> </tr> '; switch ($_GET['sort']) { case "ascsurname": usort($Mass, "compare1"); break 1; case "descsurname": usort($Mass, "compare2"); break 1; case "ascname": usort($Mass, "compare3"); break 1; case "descname": usort($Mass, "compare4"); break 1; case "ascbirthday": {usort($Mass, "compare5");}; break; case "descbirthday": {usort($Mass, "compare6");}; break; } #функции сортировки по возрастанию и убыванию function compare1 ($v1, $v2) { #asc if ($v1["Surname"] == $v2["Surname"]) return 0; return ($v1["Surname"] < $v2["Surname"])? -1: 1; } function compare2 ($v1, $v2) { #desc if ($v1["Surname"] == $v2["Surname"]) return 0; return ($v1["Surname"] < $v2["Surname"])? 1: -1; } function compare3 ($v1, $v2) { if ($v1["Name"] == $v2["Name"]) return 0; return ($v1["Name"] < $v2["Name"])? -1: 1; } function compare4 ($v1, $v2) { if ($v1["Name"] == $v2["Name"]) return 0; return ($v1["Name"] < $v2["Name"])? 1: -1; } function compare5 ($v1, $v2) { if ($v1["Birthday"] == $v2["Birthday"]) return 0; return ($v1["Birthday"] < $v2["Birthday"])? -1: 1; } function compare6 ($v1, $v2) { if ($v1["Birthday"] == $v2["Birthday"]) return 0; return ($v1["Birthday"] < $v2["Birthday"])? 1: -1; } #Вывод списка группы в таблицу for ($i=0; $i<count($Mass); $i++) { echo '<tr>'; echo "<td>". $Mass[$i]['Surname'] . "</td>"; echo "<td>". $Mass[$i]['Name'] . "</td>"; echo "<td>". $Mass[$i]['Birthday'] . "</td>"; echo '</tr>'; } echo '</table>'; ?> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2014, 20:14 |
|
||
|
Общий фон страницы
|
|||
|---|---|---|---|
|
#18+
А что, на сервере что-то делается с принимаемыми от клиента данными о выбранном цвете? Нет? Тады цвет фона (или имя стиля для body) записать яваскриптом в куку. Оттуда же и читать при загрузке страницы. Отправку формы на сервер выкинуть, оставив всю эту байду на клиенте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2014, 21:47 |
|
||
|
Общий фон страницы
|
|||
|---|---|---|---|
|
#18+
В строке <a href="?sort=Surname&sort=ascsurname"> надо добавить of= как-то. Ведь, если в строке браузера явно изменяю это http://localhost./index.php?sort=Surname&sort=ascsurname (только сортировка) на это http://localhost./index.php?sort=Surname&sort=ascsurname&of=3 (сортировка, а затем кликаю на фон), то цвет фона меняется как и в этих случаях: http://localhost./index.php?sort=Surname&sort=ascsurname&of=0 (только добавил &of=0) http://localhost./index.php?sort=Surname&sort=ascsurname&of=1 (только добавил &of=1) http://localhost./index.php?sort=Surname&sort=ascsurname&of=2 (только добавил &of=2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2014, 22:01 |
|
||
|
Общий фон страницы
|
|||
|---|---|---|---|
|
#18+
NniicckkВ строке <a href="?sort=Surname&sort=ascsurname"> надо добавить of= как-то.Как вариант, можно и так. Есть "несомненный" плюс в этом - один пользователь может передать (скопипастить) ссылку другому пользователю и таким образом передаст так же информацию о цвете. Оно вообще надо? Если надо - так и делайте. Если не надо - упрощайте. Сейчас у Вас уже три параметра в ссылке. А сколько этих ссылок на странице? И ведь каждую надо сформировать. Добавьте еще несколько таких же несущественных параметров (размер шрифта, толщину рамок и т.п.), увеличьте в несколько раз количество ссылок - и получите головную боль. Хотите продолжать? Более-менее простой вариант без существенной переделки кода выглядит примерно так Код: php 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2014, 23:52 |
|
||
|
Общий фон страницы
|
|||
|---|---|---|---|
|
#18+
Изменил скрипт, в итоге в адресной строке, при нажатии на цвет фона, написано: http://localhost./index.php?of=1 (для жёлтого) http://localhost./index.php?of=2 (для серого) ... Выбрал жёлтый фон и кликаю на Surnameup (сортировку по возрастанию), получается следующее - http://localhost./index.php?sort=Surname&sort=ascsurname&of=<?php echo $of; ?> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2014, 14:44 |
|
||
|
Общий фон страницы
|
|||
|---|---|---|---|
|
#18+
Ах вон оно как... не обратил внимания сразу Тады так Код: php 1. 2. 3. 4. 5. 6. 7. 8. PS: Может, пора уже почитать учебник по основам PHP? ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2014, 14:57 |
|
||
|
Общий фон страницы
|
|||
|---|---|---|---|
|
#18+
Другой способ определения строк – это использование heredoc-синтаксиса. В этом случае строка должна начинаться с символа <<< , после которого идет идентификатор. Заканчивается строка этим же идентификатором... Спасибо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2014, 15:13 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38807494&tid=1462254]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 254ms |
| total: | 395ms |

| 0 / 0 |
