Free! That ought to get your attention. This is a modern solution to an age old problem.
The Mileage and Gas Receipt database helps you keep track of all your gas receipt expenses and business mileage. Gas receipt information includes miles per gallon. In addition to being useful information, it can help you identify missing receipts. Mileage information includes a percent used for business, a number some people use for tax purposes.
This service is available to any device connected to the Internet. Nothing to download, nothing to sign up for. It is simply a web site. Using a mobile device to record gas receipts and mileage provides a convenient tool for handling a necessary, but otherwise nuisance task. Having computer access to that same information, makes emailing, printing or otherwise preparing your information that much easier.
You'll need a Google account to use this service. Google provides a great deal of security and support. I couldn't provide this level of protection without them. Sign up for a Google account here if you need one.
Grab your receipts and head to your future home for Mileage & Gas Receipts.
In the Mileage app, the Ending Mileage field, you can say '+13' to add 13 miles to the Starting Mileage.
Your 'home' button is your user name link in the upper right corner.
A project goal is to work on any Internet connected device, and to run on any Internet connected server. Towards that end I use basic and common tools, and rely on HTML5 to provide the universal platform.
Starting on the backend, the data is stored in a MySQL database. PHP is the development language on the server. Authorization is done using the Google APIs, which use OAuth 2.0 for both authentication and authorization. There is essentially one program (one Object) through which all database connectivity is funneled.
My object oriented programming skills improved greatly. After building the application, I realized many mistakes I had made, and opportunities I had missed. Piece by piece, I rewrote the entire system many times. Most aspects of this application are now object oriented. The remaining procedural block is the routine to produce output.