Forum Webscript.Ru
Программирование => PHP => Тема начата: Karpov от 24 Мая 2004, 16:12:05
-
...Мои извинения за беспокойство, но есть вопросик!
Возможно ли сделать так, чтобы определенная php-страница запускалась в опеделенное время и работала допустим час???
Пробовал под XP запускать мастер планирования задач, ставил время, указывал IE, но ничего не происходит. Народ help! :confused:
-
нет
-
что ты собрался делать целый час?
-
Тут принцип таков:
этот чудо-php файл копирует фотографии (для архива камеры) и добавляет нужную информацию в определенные файлы, для скрипа web-камеры (очень необычного). Необходимо чтобы все это работало 2 раза в день по 1 часу.
Так, если нельзя ....... то.......... это ужас! Может есть какой-то выход подскажите!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! PLZ!!!
-
А если это будет работать 2 раза в день по 10 секунд, то все, пиши пропало?
-
Karpov:
указывал IE
не Осла надо указывать а php.exe и в качестве параметра передавать ему скрипт.
-
A если по подробнее...
Указываю php.exe в планировщике и .........????
-
Karpov
ты вообще в курсе как из командной строки пхп-скрипты запускать ?
-
... в общих чертах, но этого явно не достаточно ... :(
может ссылку дашь или по советуешь конкретно...
-
Karpov
http://www.php.net
[off] совсем мануал читать разучились [/off]
-
Прекрасно понимаю, что азов php-програмирования у меня нет. Но мануал читать нет времени!!!...
Да и вообще реально на чужом серваке, к которому нет толкового доступа, запускать определенный скрипт с условиями работ 2 раза в день по 1 часу. (Здесь возможно разграничить рамки начала и конца, т.к. в скрипте стоит refresh и для web-камеры он будет каждую минуту перезагружаться)
Я вообще не знаком с публикацией скриптов на сервере. Может все-таки объясните тупому, незнающему ничего, но умному и стремящемуся к знаниям человеку. PLZ!!!
;)
-
а пхп на чужом серваке есть?
-
Есть.
-
А cron? Если да, то ищи доки по cron\'у.
-
Пока не знаю. Ну а что делать если там не онного??? Что запускать...и делать???
-
Karpov:
Ну а что делать если там не онного?
Написать демона на си.
PHP разрабатывался не для таких задач, в которых скрипты часами работают.
-
Для не профессионалов
-
Для не профессионалов можно поподробнее...
-
Karpov:
к которому нет толкового доступа
1. хочешь получать ответы - выражайся яснее. Что для тебя значит "толковый доступ" ? Хотя лучше ответь, по каким протоколам есть доступ к этому серверу ?
2. Форум - это тебе не бесплатный сборник ответов на все твои вопросы. Здесь могут помочь написать скрипт, но писать тебе прийдется самому. И подробный пересказ документации, которую тебе лень (нет времени) читать тоже не будут.
3. Если у тебя нет компиляции пхп в режиме cli то скорее всего тебе прийдется отказаться от использования пхп в данном скрипте.
ЗЫ
FreeSpace
[off] Он пока даже не знает что такое cron а ты ему уже демона предлагаешь писать :) [/off]
-
Karpov:
Для не профессионалов можно поподробнее...
Можно.
PHP разрабатывался для обработки запросов, которые пользователь (точнее браузер пользователя, т.н. User Agent) отправляет веб-серверу.
Сервер получил запрос, передал его php, тот отработал и выдал результат, обычно в виде html-странички.
Чтобы пользователь не уснул в ожидании ответа сервера, php-скрипты должны работать относительно быстро. Если скрипт работает секунду - это уже очень медленный скрипт. А если он будет работать час...
Внизу этого форума ты можешь увидеть строку наподобие вот этой:
Страница сгенерирована за 0.42178011 секунд (35.19% PHP - 64.81% MySQL) SQL запросов: 26
Обработать 100 запросов за сеунду - раз плюнуть. Обработать 1 запрос за час - это уже очень сложно.
Существует огромное количество причин, по которым php не может стправлятся с задачами, требующими непрерывной работы в течение длительного периода времени. Я не буду их здесь перечислять, потому что сам пока что не знаю всех технических тонкостей работы php.
-
Karpov:
2 раза в день по 1 часу
Мне кажется, лучше сделать так:
1.Для win - втупую прописать в планировщике вызов скрипта, скажем, через каждые 5 минут начиная с 14:00 до 15:00
2.Для cron Unix - то же самое, но в crontab.
Почему: если ты будешь вызывать скрипт каждую секунду в теч. часа, брать картинку с камеры и складывать, то, во-первых, никакого харда не хватит (2 метра img * 3600 сек = 7,2 гига), а во вторых, ну на фига тебе посекундная сьемка?
-
CGVictor:
на фига тебе посекундная сьемка
кстати так некоторые системы наблюдения работают.
генерят поток жипегов, вместо потокового видео.
дешевле по загруженности канала получается.
и универсальнее в плане формата
-
ThE0ReTiC
[off]??? Ну ни фига себе!!![/off]
Но если это хранить - это как на хосте 14 гигов в день размещать?
В любом случае, это же не на ПХП....
-
CGVictor
ну с камеры наблюдения идет не 2 мега а кил 30-40
чуствуешь разницу?
-
ThE0ReTiC
Да все равно не очень оптимистично:
40К * 3600сек = 144000k = 141 метр в час....
Karpov
Опиши подробнее задачу, требуемый результат....
Или придется тебе писать что-то "Си-близкое"....
-
CGVictor
ну и чего?
меньше 300 метров в сутки.
8,5 гиг в месяц...
это ерунда.
-
ThE0ReTiC
В принципе, конечно, реально. Но у нас, когда из доступного только пиво и Valuehost... :)
-
CGVictor
не так говоришь :)
CGVictor:
Valuehost
а безлимитный канал прям дома + кластер из 10 первых пней :)
-
Респект!
С этой задачей справился: у меня постоянно висит php-скрипт, и свойство если сейсас 14, то начало работы, если что-то другое нет работы.
Вобщем вот так, но теперь интересует следующий аспект как удалить файл или папку с помощью какой функции?
-
[p]unlink[/p]
-
Пытаюсь тестировать у себя на localhost\'е следующее:
............................
unlink("../cam/$today/");
?>
Пишет: Permission denied in D:\\Web Design\\Karpov\\europaplus\\webcam\\1.php on line 2 и это в принципе понятно. но что делать???
-
И причем удаляю папку с файлами.
-
Karpov
вкуривать мануал до просветления...
-
хинт: удалить можно только пустой (нет файлов) каталог (папку).
-
Народ, а что делать, если нужно удалить папку с файлами и причем с 120 (!) jpg-картинками. Очень надо!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
Karpov
а если мозгами попользоваться?
если можно удалить только пустую папку - наверное надо сперва удалить все файлы из нее, а потом удалить саму папку...
-
ThE0ReTiC
Я это прекрасно понимаю. Выяснить какие файлы там находятся и под каким именем не реально. Я вот спрашиваю можно ли в таком случае удалить все файлы из папки не зная имен или нет?
-
мануал почитать религия не позволяет?
[p]is_file[/p]
-
Karpov:
Выяснить какие файлы там находятся и под каким именем не реально
Кто тебе сказал?
-
Мануал читал. Сделал вывод. Програмист из меня ...
Чего-то я ни чего не понял как мне удалить все файлы из $dir
-
Karpov
[p]opendir[/p]
[p]while[/p] [p]readdir[/p]
[p]if[/p][p]is_file[/p]
[p]unlink[/p]
-
Респект!
Тут имеется inf-файл с именами тех файлов, которые есть в папке! Может эту inf-у пристроить:
fopen
fread
fclose
а дальше что делать какие переменные использовать???
-
Karpov
изготовление скриптов в другом форуме.
-
____________________________________________________________________
Народ! пытался поставить на сервер php-файл. Я не знаком с публикацией и никогда ранее этим не занимался (тестирование на localhost\'е отличается от тестирования на сервере).
Файл some.php создает папку, копирует jpg, и заносит инфу в inf-файл.
Пишет: нет прав доступа.
Я не понимаю на что ставить права на some.php или на папку, где все эти действия присходят????????????????????????
-
http://php.spb.ru/php/chmod.html
-
Респект!
Возможно задам банальный и тупой вопрос, но возможно на php-файл поставить логин с паролем и где и как это делать. (в смысле со стороны сервера, а не в самом скрипте програмировать...)
:)
-
Karpov
http://httpd.apache.org/docs/howto/auth.html#basic
-
OK. Но вопрос для Юникса тоже подойдет или как???
-
да.
-
Народ что написать, чтобы сообщения об предупреждениях и ошибках не отображались в отдельно взЯтой php-странице.
-
Karpov
начинает утомлять отсутствие всяких позывов почитать мануал, прежде чем лезть в форум :mad:
[p]error_reporting[/p]
-
Народ Респект!!!
Нужна помощь, собственно ради чего и лезу на форум.
Дело в следующем. Смастерил скрипт для работы web-камеры с архивом за 24 часа. Принцип действия таков:
скрипт 1.php автоматически обновляется каждые 30 секунд, при этом он копирует фотографию из папки from_ftp в нужную директорию для камеры и еще добавляет определенную инфу в inf-файлы. Обновляется скрипт по средствам refresh на java. Но это не суть важно.
А дело такое этот скрипт запущен с компа (не являющегося серваком) и он работает и должен работать 24 часа ежедневно. Но увы наше соединение с инетом слишком медленно и неуверенно, да и сервак переодически перезагружается и следовательно после очередной попытки сделать refresh он пишет сервер не найден! и на этом встает. Все конец!!! Только если сам нажмешь потом на кнопку в браузере обновить скрипт опять заработает. Но увы каждый час проверять работу скрипта не возможно. В идеале туда суваться необходимо раз в месяц.
Может подскажите что сделать. Как поставить какую-нибудь защиту. Чтобы хотя бы раз в час проверял есть ли соединение и обновлял 1.php
HELP!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
Karpov:
проверял есть ли соединение
Соединение с чем?
Вопрос: а что мешает вызвать этот (или подобный) скрипт путем использования Crontab?
Если решать (дорешивать!) твою постановку задачи, то сделай в клиентской страничке (которая с refresh-ем) отдельный фрейм, который будет обновляться раз в час и, если необходимо, обновлять всё остальное содержание.
Но это не есть гуд.
-
Karpov
man crontab
CGVictor:
то сделай в клиентской страничке (которая с refresh-ем) отдельный фрейм, который будет обновляться раз в час
глупая идея.
-
Глупая - не глупая, но сам до этого дошел этой ночью. Выложил и запустил. Посмотрим что будет.........
-
Что тебе мешает запустить cron?
Делать через рефреш фрейм - неправильно, некрасиво и ненадежно.
-
Я бы с удовольствием, но.......начальнику покажется геморно (а если он не захочет, то это не пробьешь, да и провайдер настолько ленив, что за лишнюю плату ничего не захочет сделать). Но это только одна сторона. Если по правде, то я полный профан в php и прочих прогах. Не подскажешь ссылки на сайты FAQ по cron\'у или чего-нибудь прочее.......
-
http://www.freebsd.org/cgi/man.cgi?query=cron&apropos=0&sektion=0&manpath=FreeBSD+5.2-RELEASE+and+Ports&format=html
http://www.freebsd.org/cgi/man.cgi?query=crontab&apropos=0&sektion=0&manpath=FreeBSD+5.2-RELEASE+and+Ports&format=html
-
Может быть, конечно, я что-то не понимаю, но cron у меня не работает!
Распаковал архив, где было 3 файла, запустил cron.exe, в crontab вписал следующее:
* 13 * * * /server/php/php.exe /program files/.../test.php
(полные пути). Но ничего не работает! Ребята - HELP!!!!!!!!!!!!! оч-чень надо!!!
-
ой е....
пойду выпью чего-нить
ты под винду планировщиком встроенным пользоваться не пытался ?
-
Ok. Я многого не понимаю, по молодости лет.
Может быть тогда подскажите, чем пользоваться, планировщиком или другой прогой, чтобы при загрузке Winows автоматически запускался IE????????
Оч надо!
-
Karpov:
чтобы при загрузке Winows автоматически запускался IE????????
А ярлычок ИЕ в меню автозагрузка не пытался положить?
Вообще F1.
-
Респект уважаемые. Помнимаю, что отсутствие в загашнике знаний мануала ничего хорошего не дает, но все-таки очень прошу о помощи!!!
if($hour==21){
@copy("$dir_from_ftp","$dir_foto");
}else{
??? - как повторить попытку копирования через несколько секунд, какими функциями - ???;
}
-
[p]sleep[/p] в цикле например.
тока сдается мне ты чего-то не додумал, если возникла такая потребность
-
Нет дело в том, что тут такая хитрая система, аля самогонный аппарат тети Глаши.
Копирование фотографий происходит из /from_ftp/ в /foto/, но иногда момент копирования фотки из папки /from_ftp/ совпадает с ее заменой на новую и поэтому ничего не происходит.... :(((((((((