943,754 Members | Top Members by Rank

Ad:
  • PHP Discussion Thread
  • Unsolved
  • Views: 12013
  • PHP RSS
Jan 11th, 2007
0

PHP and scheduled tasks

Expand Post »
Have you ever seen (or played) one of those "Browser Games" where you build stuff, create armies and fight other players? Right now I need to know how to do those scheduled tasks...

I'm building a PHP appilcation for my job. I work at a visitors center and I want to create an application where you can add visits and let a worker to "add himself" to the shift. The server should perform some automated tasks like finishing the "registration" period for a shift and deleting or archiving a Visit after it has ocurred.

Would you mind pointing out how to do that with PHP?

P.S.: If there is an open source application similar to mine out there, I could use a link to it :cheesy:
Similar Threads
Reputation Points: 10
Solved Threads: 0
Newbie Poster
Lothas is offline Offline
4 posts
since Jan 2007
Jan 11th, 2007
0

Re: PHP and scheduled tasks

You have two choices:
  • Set up a cron job for the routine script
  • Call the routine on a common page (like index.php), save a time when it's executed and check against that so you can limit the execution times

The cron job option seems to make more sense.
Reputation Points: 13
Solved Threads: 2
Junior Poster
php_daemon is offline Offline
138 posts
since Aug 2006
Jan 11th, 2007
0

Re: PHP and scheduled tasks

a cron job would be the ideal case, check with your host to see if they allow them.
Reputation Points: 13
Solved Threads: 4
Posting Whiz
paradox814 is offline Offline
351 posts
since Oct 2004
Jan 12th, 2007
0

Re: PHP and scheduled tasks

Click to Expand / Collapse  Quote originally posted by php_daemon ...
You have two choices:
  • Set up a cron job for the routine script
  • Call the routine on a common page (like index.php), save a time when it's executed and check against that so you can limit the execution times

The cron job option seems to make more sense.
If you want to call the routine job from a webpage, try this method I've blogged about: http://fijiwebdesign.com/content/view/86/77/


It allows you to set the job without delaying the sending of the web page to the user. Thus your job can go on for minutes or even hours (if your server allows it) and the user had no idea they initiated a routine job on your server.
Moderator
Reputation Points: 457
Solved Threads: 101
Nearly a Posting Virtuoso
digital-ether is offline Offline
1,250 posts
since Sep 2005
Jan 13th, 2007
0

Re: PHP and scheduled tasks

If you want to call the routine job from a webpage, try this method I've blogged about: http://fijiwebdesign.com/content/view/86/77/


It allows you to set the job without delaying the sending of the web page to the user. Thus your job can go on for minutes or even hours (if your server allows it) and the user had no idea they initiated a routine job on your server.
Nice article. I didn't know about a possibility of performing tasks after rendering the page. Just got up and already learned something. Thanks.

I got a question though about the first method of using exec. Wouldn't it be a better idea to use the php CLI as opposed to wget? I mean the CLI version overrides the max_execution_time to unlimited while running it with wget it falls under the restriction (unless you set it in your script).
Reputation Points: 13
Solved Threads: 2
Junior Poster
php_daemon is offline Offline
138 posts
since Aug 2006
Jan 13th, 2007
0

Re: PHP and scheduled tasks

If you want to call the routine job from a webpage, try this method I've blogged about: http://fijiwebdesign.com/content/view/86/77/


It allows you to set the job without delaying the sending of the web page to the user. Thus your job can go on for minutes or even hours (if your server allows it) and the user had no idea they initiated a routine job on your server.
why not just use
PHP Syntax (Toggle Plain Text)
  1. exec( 'php /home/username/routine_task.php > /home/username/routine_task.log &' );

using php allows you the ability to keep the code away from website so the code is not public (ie there is no need to place it in the public_html folder, it can be placed anywhere). No one will ever see, and you don't need any ie hacks.

Also since everything is now only related to your cron job why port everything to /dev/null ? I would recommend porting everything to say routine_task.log that way every day there is a log (that is overwritten so it will never grow to large in terms of the number of logs) of any errors that occurred on that script allowing you to fix any mistakes.
Last edited by paradox814; Jan 13th, 2007 at 5:18 am.
Reputation Points: 13
Solved Threads: 4
Posting Whiz
paradox814 is offline Offline
351 posts
since Oct 2004

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in PHP Forum Timeline: Can a text link pass php variables?
Next Thread in PHP Forum Timeline: Sorting Database Results





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC