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



 

Здравствуйте, гость (

| Вход | Регистрация )

3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
> Выполнение функции через определенное время
MetSerp
MetSerp
Topic Starter сообщение 24.10.2008, 16:49; Ответить: MetSerp
Сообщение #1


Появилась такая забота:
на сайте должно выводится случайно число через определенное время причем не время пользователя а серверное то есть например генерация происходит раз в 5 минут и все эти 5 минут у всех кто сидит или заходит на сайт отображается одно и тоже число и выводится через echo в табличку на сайте (ну типа викторина сам до конца не понял что человек хочет от нее. Короче если показывается определенное число и пользователь нажимает на определенную кнопку ему падают сайтовые плюшки):nea:
Сначала я сделал так [PHP]<td width='20%' align='center'><b><?echo rand(1, 50);?></b></td>[/PHP] естественно число генерируется каждый раз при загрузке страницы что совершенно ненужно, потому я решил вывести значение в переменную а переменную в config.php собсноо и саму функцию генерации туда же.
Потом просто сделать инклюд этого конфига и через echo вывести переменную в табличку. Но вот как заставить функцию работать раз в 5 минут я не въезжаю :sarcastic: Да и впринципе как реализовать туго представляю я все таки самоучка :rolleyes:
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Webmaster_hb
Webmaster_hb
сообщение 24.10.2008, 16:58; Ответить: Webmaster_hb
Сообщение #2


есть два подхода
первый - это поставить задачу в крон - cron - он выполняет на сервере необходимые действия раз в определенное время
вторая - это реализовать такой подход
ваше значение надо хранить в базе или в файле
но кроме значения надо хранить время серверное в какой момент она была задана
и при каждом обращении сначала проверять сколько прошло времени с момента прошлого обновления (благо время мы сохранили)
если оно уже превысили заданное значение - то обновить переменную и текущую дату
если же нет - то просто вывести текущую дату
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
Topic Starter сообщение 24.10.2008, 17:10; Ответить: MetSerp
Сообщение #3


эмм... а что именно в крон поставить как функция будет выглядеть?
[PHP] $plyushka = rand(1, 50);[/PHP] ?
а в ячейке мне ее откуда потом взять?
Можно поточнее пожалуйста позарез как надо :unsure:
в пыхе я нубее всего :rolleyes: больше делфи люблю:wub:, но к сожалению на нем сайты не пишут :nea:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Webmaster_hb
Webmaster_hb
сообщение 24.10.2008, 17:38; Ответить: Webmaster_hb
Сообщение #4


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

можно попробовать реализовать второй вариант
следуйте указанным иснструкциям и выкладывайте код который получается
будем править и помагать
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
Topic Starter сообщение 24.10.2008, 18:04; Ответить: MetSerp
Сообщение #5


[PHP]
<? include ('config.php');
$sql = mysql_query("INSERT into stats(num)
values (rand(1, 50));
?>[/PHP]
Где:
stats имя таблицы
num собствено целевая ячейка где и будет хранится данные
в конфиге лежат параметры подключения к бд и сама операция подключения
Исполняемый скрипт такой будет? совершенно неуверен в правильности написания (но проверить негде щас у хостера работы на сервере) :nea:
Я хотя бы в ту сторону подумал ?:rolleyes:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Webmaster_hb
Webmaster_hb
сообщение 24.10.2008, 18:08; Ответить: Webmaster_hb
Сообщение #6


все правильно в ту сторону, но забыли самое главное! записывать время когда эта запись была произведена ;)
в таблице надо добавить еще одно поле для даты, формат этого поля может быть timestamp - тогда дата сама будет обновляться - правда маленький минус timestamp - посчитать разницу между ним и текущей датой, прйдется немного в форматах покапаться
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
Topic Starter сообщение 24.10.2008, 18:14; Ответить: MetSerp
Сообщение #7


А это все равно необходимо даже если поставить выполнение скрипта на каждые 15 минут? и кстати использовать INSERT или лучше UPDATE?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Webmaster_hb
Webmaster_hb
сообщение 24.10.2008, 18:20; Ответить: Webmaster_hb
Сообщение #8


вам надо все равно сохранять дату, чтобы потом определять прошло 15 минут или нет

если вы хотите на память себе сохранять старые значения то INSERT
а вообще вам достаточно UPDATE
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
Topic Starter сообщение 24.10.2008, 18:26; Ответить: MetSerp
Сообщение #9


[PHP]<? include ('config.php');
$plushka = rand(1, 50);
$sql = mysql_query("UPDATE into stats(num , time)
values ($plushka , date("H:i:s"));
?>[/PHP]
Что то типа такого?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Webmaster_hb
Webmaster_hb
сообщение 24.10.2008, 18:30; Ответить: Webmaster_hb
Сообщение #10


примерно
UPDATE STATS set(num , time) values ($plushka , date("H:i:s")) where id=1
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

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

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыBropush - Твой бро в монетизации через Push-уведомления
28 bropush 11187 Вчера, 12:52
автор: bropush
Открытая тема (нет новых ответов) Через какой браузер и как можно найти в кэшэ браузера видео
10 Room 1925 23.3.2024, 7:41
автор: Room
Горячая тема (нет новых ответов) Вы тратите собственное время зря?
35 metvekot 2456 19.3.2024, 20:14
автор: MisterBit
Открытая тема (нет новых ответов) Странный трафик на сайте длительное время
26 TABAK 7503 16.3.2024, 17:31
автор: Boymaster
Открытая тема (нет новых ответов) XMLSeo - поисковая выдача Яндекс, Wordstat, Google, Bing, DuckDuckGo через API
0 Malpertu36 1533 25.12.2023, 19:34
автор: Malpertu36


 



RSS Текстовая версия Сейчас: 28.3.2024, 13:52
Дизайн