Форум → Программирование → PHP для идиотов → увеличение(изменение) времени
увеличение(изменение) времени
Страницы: ← Следующая страница →
-
Здравствуйте! передо мною стоит задача:
нужно, чтоб один раз в неделю на сайте сменялась информация вывода из БД. есть раздел "популярные статьи", и нужно чтоб в этом разделе сменялся вывод инфы
проблема в том, что я не знаю как сделать (высчитать) время…
<?php
$starttime = '15'; // начало работы - 15 число месяца (скажем так - 15 марта)
$changetime = $starttime+7; // получаем дату, когда надо сделать изменения
$curtime = date('d'); // текущий день
if ($changetime == $curtime) { выполнять код}
?>
загвоздка в вычислении $changetime -
Март 18, 2010, 1:03 п.п., спустя 3 минуты 17 секунд
Через mysql event создаешь view каждую неделюСпустя 14 сек.И выводишь инфу только из viewhttps://smappi.org/ - платформа по созданию API на все случаи жизни -
Март 18, 2010, 1:12 п.п., спустя 9 минут 50 секунд
ещё есть замечательная функция strtotime// последний понедельник
echo date('r', strtotime("last Monday"));Work, buy, consume, die -
-
-
Март 18, 2010, 1:27 п.п., спустя 10 минут 35 секунд
Через mysql event создаешь view каждую неделюСпустя 14 сек.И выводишь инфу только из view
можно по подробнее? спасибо!
если можно, то покажите код…Спустя 34 сек.
это мне вопрос?
нет, спасибо!
вот сейчас "играюсь с этой функцией" -
Март 18, 2010, 1:43 п.п., спустя 15 минут 27 секунд
можно по подробнее? спасибо!
можно и по-подробнееhttps://smappi.org/ - платформа по созданию API на все случаи жизни -
Март 18, 2010, 1:49 п.п., спустя 6 минут 11 секунд
можно по подробнее? спасибо!
можно и по-подробнее
мда…
я не это имел ввиду!
я не нашел как с php использовать mysql_event -
Март 18, 2010, 1:56 п.п., спустя 6 минут 48 секунд
ilma55, товарищ, а ссылка в первом моем посте вам никак не помогла? И к пхп mysql event отношения не имеетСпустя 72 сек.На самом деле можете игнорировать мои посты тут, я всеравно предложил не то что вы хотите увидеть… мы не ищем простых путейhttps://smappi.org/ - платформа по созданию API на все случаи жизни -
Март 18, 2010, 2:49 п.п., спустя 52 минуты 50 секунд
нужно, чтоб один раз в неделю на сайте сменялась информация вывода из БД. есть раздел "популярные статьи", и нужно чтоб в этом разделе сменялся вывод инфы
Моя фамилия Мессинг и я читаю ваши мысли.
- "сменить вывод инфы" значит взять следующую из запланированых записей.
- ваши записи в БД пронумерованы от 1 до ХЗ
Чтобы знать какую запись использовать, надо вычислить номер текущей недели (относительно "стартовой" даты)
<?php
$now = time(); // текущее время+дата в секундах с начала Эпохи Unix
$dateX = mktime(0, 0, 0, 3, 8, 2010); // 8 марта тоже в секундах
$daysAfter = intval(($now - $dateX) / (60 * 60 * 24));
$weeksAfter = intval($daysAfter / 7);
header('Content-type: text/plain; charset=utf-8');
echo 'С '.date('d.m.Y', $dateX).' прошло дней: '.$daysAfter."\n";
echo 'полных недель: '.$weeksAfter."\n";
выведет
С 08.03.2010 прошло дней: 10
полных недель: 1
Вобщем $weeksAfter - твой магический номер записи. Используй как сумеешьιιlllιlllι унц-унц -
Март 18, 2010, 2:52 п.п., спустя 3 минуты 41 секунду
adw0rd, а вы работали с этими event'ами ???
я не знаю куда его поместить?
CREATE EVENT `add_new_data`
ON SCHEDULE
EVERY 1 DAY START '2010-28-03 23:59:59' END CURRENT_TIMESTAMP + INTERVAL 1 WEEK
DO
SELECT * FROM content WHERE (sectionid <> 5) AND (sectionid <> 0) ORDER BY RAND() LIMIT 2;
в SELECT я получаю 2 строки… и мне нужно чтоб эти 2 строки выводились целую неделю.
потом в воскресенье снова происходит событие и я получаю опять новые 2 строки и они целую неделю отображаются… и вот так постоянно
как это сделать??? -
Март 18, 2010, 3:03 п.п., спустя 10 минут 42 секунды
эти строчки надо не только извлечь, но и записать кудато. попробуй insert :)Спустя 185 сек.еще подсказка в продолжение моего предыдущего примера: номером недели ты можешь инициировать randomize:
srand($weeksAfter);
дальше сам думай. (хотя сомневаюсь!!!!адынадын)ιιlllιlllι унц-унц -
Март 18, 2010, 3:04 п.п., спустя 1 минуту 9 секунд
artoodetoo, спасибо! с этим я уже разобрался…
я так проверяю?
$cur_day = date('N');
if ($cur_day == 1) { код }
но теперь в другом загвоздка =(
наверное нужен планировщик…
нужно чтоб в определенное время (воскр 23:59:59) генерировались данные случайным образом ($query = "SELECT * FROM content WHERE (sectionid <> 5) AND (sectionid <> 0) ORDER BY RAND() LIMIT 2"; )
в этом запросе я генерирую данные, и мне нужно чтоб на протяжении всей недели отображались эти данные.
потомв воскр снова сгенерировались данные и тд -
Март 18, 2010, 3:10 п.п., спустя 5 минут 54 секунды
offtopic: кто-то блять вставил рефреш на форум? у меня в процессе "быстрого ответа" стабильно происходит переброс на предыдущую страницу бляСпустя 78 сек.ты уже получил ответы на все вопросы
p.s.
srand(date('W'));ιιlllιlllι унц-унц -
Март 18, 2010, 3:35 п.п., спустя 25 минут 20 секунд
ilma55, я не пишу о том с чем не работаюСпустя 27 сек.а, забыл добавить !!!!!!!!!!!!https://smappi.org/ - платформа по созданию API на все случаи жизни
Страницы: ← Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!