online automated timecard system

Note: This project is no longer actively developed. A fork of this project exists which has some great new features (Active Directory integration, Sick Leave, Holidays, etc.). So, you may want to check out the barley project.
OATS 2.0

OATS: Online Automated Timecard System. A multi-user online timecard system written in PHP/MySQL. It allows users to input their hours and then print their hours out at the end of the time period (in PDF/HTML/Text format). It also has support for creating a template if the user works the same hours every week. After submitting his/her timecard, the user can start a new timecard, and the old one is archived.

The data is all stored in MySQL, and O.A.T.S. has support for three authentication methods: database, imap, and pop3.

OATS has a well-developed administration center to make it easy to log in as another user, clean out tables, and update the FAQ.


All of my scripts are open source, and therefore free!. Of course contributions in the form of documentation, patches or wishlist items are always welcome. In addition, if you need help then you can hire me to install, modify, or improve the scripts. Head over to my consulting website to contact me.

  • 08-10-2002: OATS is now using my HTML_ToPDF class which should make PDF creation of timecards more robust.
  • 05-22-2002: Made OATS compatible with PHP 4.2 (where register_globals is off by default). Fixed a number of other minor bugs.
  • 04-30-2002: Found a few minor bugs in 2.0. You should download 2.0.1 to prevent the problems from occuring.
  • 04-29-2002: OATS 2.0 is released (finally!).
  • PHP 4.1.0 or higher. Because OATS uses the $_GET and $_POST arrays PHP 4.1+ is needed.
  • Unix. I don't think that OATS works on Windows machines currently, if someone gets it to work please let me know.
  • MySQL The only database OATS supports right now is MySQL. Writing others should be easy as all database commands are in one file, so if someone writes one let me know ;)
  • 08-10-2002: Version 2.0.3. This version uses the HTML_ToPDF script for creating PDF timecards.
  • 05-22-2002: Version 2.0.2. This version is compatible with PHP 4.2 or any other PHP version which has register_globals off.
  • 04-30-2002: Version 2.0.1. This version fixes a few database issues. Also fixed a bug where more than one job could not be added.
  • 04-29-2002: Version 2.0. This is new PHP/MySQL version, completely rewritten. Much faster, much more flexible, a better User Interface, etc.
  • 06-01-2001: Version 1.1 (not recommended, unless you must). This update has the ability to control how many in/out columns there are, as well as a fix so you can control the domain of the emails sent to supervisors.
  • 01-01-2001: Version 1.0 (written in Perl) (not recommended, unless you must). You need to know some Perl to set it up.
Google Groups Announcements, Help, and Discussion for OATS:
Browse Archives at

The login page

Main options page

The Clock In/Out Page

Full Time Card

Summary of Recorded & Tallied Hours

Submitted Timecard

Admin Center
  • You can log on and try it out here (sorry, no admin access available). User name is test, password is tester.
Docs: Thanks:
  • To Larry Underhill for being the first to get me something off my wishlist!

The script under the GNU license, and thus is free for you to use and modify as you wish, just let me know if you make any improvements. If you feel a need to give back for the late nights, you can always check out my book wishlist at ;)