X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
> Помогите с кодом php
densskv
densskv
Topic Starter сообщение 18.6.2014, 2:07; Ответить: densskv
Сообщение #1


Бывалый
****

Группа: Banned
Сообщений: 305
Регистрация: 18.1.2014
Из: Одесса
Поблагодарили: 60 раз
Репутация:   5  


Доброго времени суток.
Нужен совет знающих людей.

Как создать скрипт изменяющий фоновое изображение страницы или сайта с привязкой к времени суток
Утро
День
Вечер
Ночь

Но вот в чем суть, нужен скрипт, который не будет использовать операторы ветвления.

заранее спасибо за помощь


--------------------
Вечный бан за необоснованную критику и угрозы в адрес администрации форума.
1
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
marv
marv
сообщение 18.6.2014, 3:06; Ответить: marv
Сообщение #2


Частый гость
**

Группа: User
Сообщений: 57
Регистрация: 4.11.2013
Поблагодарили: 36 раз
Репутация:   10  


Например, так:
Код
$h = date('H');

$morning = (int)($h > 8 && $h < 12);
$afternoon = (int)($h > 12 && $h < 18);
$evening = (int)($h > 18 && $h < 23);
$night = (int)($h > 23 || $h < 8);

$background = "/background/{$morning}-{$afternoon}-{$evening}-{$night}.png";


/background/1-0-0-0.png - утро
/background/0-1-0-0.png - день
/background/0-0-1-0.png - вечер
/background/0-0-0-1.png - ночь

Сообщение отредактировал marv - 18.6.2014, 3:17


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
densskv
densskv
Topic Starter сообщение 18.6.2014, 3:50; Ответить: densskv
Сообщение #3


Бывалый
****

Группа: Banned
Сообщений: 305
Регистрация: 18.1.2014
Из: Одесса
Поблагодарили: 60 раз
Репутация:   5  


marv, сейчас проверю :)

marv, вот так вот я его переделал, но не подгружается картинка. Может это из-за того что на локальном сервере, а на виртуальном будет нормально. Или есть ошибка в подгрузке фото?

CODE
<?php

$h = date("H");

$utro =($h > 8 && $h < 12);
$dey =($h > 12 && $h < 18);
$vecher =($h > 18 && $h < 23);
$noch =($h > 23 || $h < 8);

$img = "/img/{$utro}-{$dey}-{$vecher}-{$noch}.jpg";
?>
<img src="img/<?php echo '/$img/{$utro}-{$dey}-{$vecher}-{$noch}.jpg'; ?>.jpg" width="900">


Синтаксических ошибок нет, а вот вместо картинки выводится блок заданных размеров, и в нем значек битого фото.

Сообщение отредактировал densskv - 18.6.2014, 3:50


--------------------
Вечный бан за необоснованную критику и угрозы в адрес администрации форума.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
marv
marv
сообщение 18.6.2014, 3:55; Ответить: marv
Сообщение #4


Частый гость
**

Группа: User
Сообщений: 57
Регистрация: 4.11.2013
Поблагодарили: 36 раз
Репутация:   10  


Код
<img src="<?php echo $img; ?>" width="900">

И да, если вы это делаете для продакшена, вам лучше сделать это в JavaScript, у людей могут быть разные часовые пояса)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
densskv
densskv
Topic Starter сообщение 18.6.2014, 4:13; Ответить: densskv
Сообщение #5


Бывалый
****

Группа: Banned
Сообщений: 305
Регистрация: 18.1.2014
Из: Одесса
Поблагодарили: 60 раз
Репутация:   5  


marv, нет, это для развития, не для продажи. В том то и дело, что я хочу чтоб привязка была к системному времени :)

densskv, Мне кажется , что переменным утро, день, вечер и ночь, нужно еще присвоить фото, или это не надо?

Фото лежат в отдельной папке

Если прописываю путь к одному фото, то фото работает, а вот переменная имг не работает


--------------------
Вечный бан за необоснованную критику и угрозы в адрес администрации форума.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
marv
marv
сообщение 18.6.2014, 4:17; Ответить: marv
Сообщение #6


Частый гость
**

Группа: User
Сообщений: 57
Регистрация: 4.11.2013
Поблагодарили: 36 раз
Репутация:   10  


Вы ещё не добавили преобразование (int):
Код
$utro = (int)($h > 8 && $h < 12);
$dey = (int)($h > 12 && $h < 18);
$vecher = (int)($h > 18 && $h < 23);
$noch = (int)($h > 23 || $h < 8);
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
densskv
densskv
Topic Starter сообщение 18.6.2014, 4:33; Ответить: densskv
Сообщение #7


Бывалый
****

Группа: Banned
Сообщений: 305
Регистрация: 18.1.2014
Из: Одесса
Поблагодарили: 60 раз
Репутация:   5  


marv, добавил, вот весь код, но все равно не работает, что то с путем к картинкам. Наверное пути к картинкам нужно прописать в переменные?

CODE
<?php

$h = date("H");

$utro = (int) ($h > 6 || $h < 12);
$dey = (int) ($h > 12 || $h < 18);
$vecher = (int) ($h > 18 || $h < 0);
$noch = (int) ($h > 0 || $h < 6);

$img = "/img/{$utro}-{$dey}-{$vecher}-{$noch}.jpg";
?>
<img src="img/<?php echo $img; ?>.jpg" alt="Картинка" width="900">



Сообщение отредактировал densskv - 18.6.2014, 4:33


--------------------
Вечный бан за необоснованную критику и угрозы в адрес администрации форума.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Tollun
Tollun
сообщение 18.6.2014, 4:37; Ответить: Tollun
Сообщение #8


Старожил
******

Группа: Active User
Сообщений: 1595
Регистрация: 1.10.2009
Из: Хабаровск
Поблагодарили: 394 раза
Репутация:   66  


Цитата(densskv @ 18.6.2014, 11:33) *
$img = "/img/{$utro}-{$dey}-{$vecher}-{$noch}.jpg";
?>
<img src="img/<?php echo $img; ?>.jpg" alt="Картинка" width="900">

В Вашем случаи измените содержимое переменной
Код
$img = "{$utro}-{$dey}-{$vecher}-{$noch}";

или html
Код
<img src="<?php echo $img; ?>" alt="Картинка" width="900">

а то у Вас дважды папка img и расширение

Сообщение отредактировал Tollun - 18.6.2014, 4:39


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
densskv
densskv
Topic Starter сообщение 18.6.2014, 5:03; Ответить: densskv
Сообщение #9


Бывалый
****

Группа: Banned
Сообщений: 305
Регистрация: 18.1.2014
Из: Одесса
Поблагодарили: 60 раз
Репутация:   5  


Tollun, поменял, но все равно не работает. Вот весь код.

CODE
<?php

$h = date("H");

$utro = (int) ($h > 6 || $h < 12);
$dey = (int) ($h > 12 || $h < 18);
$vecher = (int) ($h > 18 || $h < 0);
$noch = (int) ($h > 0 || $h < 6);

$img = "{$utro}-{$dey}-{$vecher}-{$noch}";
?>
<img src="<?php echo $img; ?>" alt="Картинка" width="900">


Неужели все таки не получится сделать без операторов ветвления ?:)

На сколько я вижу, то переменным заданы временные параметры, но ведь им не заданы привязки изображений. Ведь к каждой переменной нужно привязать изображение, и потом только оно будет работать. Или я чего то не допонимаю?

может приклеить урлы к переменным на фото, или как то так. Ни как не могу понять :)


--------------------
Вечный бан за необоснованную критику и угрозы в адрес администрации форума.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Tollun
Tollun
сообщение 18.6.2014, 5:40; Ответить: Tollun
Сообщение #10


Старожил
******

Группа: Active User
Сообщений: 1595
Регистрация: 1.10.2009
Из: Хабаровск
Поблагодарили: 394 раза
Репутация:   66  


densskv, ваша проблема в не внимательности, и не желании думать, ещё раз верните код к предыдущему виду и ещё раз прочтите моё сообщение.
зы. я специально выделил жирным, догадываясь, что Вы пропустите, но и это не помогло...

Сообщение отредактировал Tollun - 18.6.2014, 5:42


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Веб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
18 qpPeW 3368 Вчера, 13:32
автор: qpPeW
Открытая тема (нет новых ответов) Помогите выбрать программу
Помогите выбрать программу
11 impak 1334 11.12.2017, 13:11
автор: Mikki
Открытая тема (нет новых ответов) php скрипты любой сложности / диз+верстка (адаптивно)
любые задачи на php - автоматизация, парсинг, работа с БД
1 affrodita 496 8.12.2017, 17:40
автор: affrodita
Открытая тема (нет новых ответов) Помогите найти плагин на WP
Отзывы с профилей соц сетей
1 SEOMR 433 30.11.2017, 7:18
автор: Nell
Открытая тема (нет новых ответов) Помогите найти проблему
Долгий ответ сервера
6 maxim1249 684 29.11.2017, 17:27
автор: genjnat


 



RSS Текстовая версия Сейчас: 13.12.2017, 19:39
Дизайн