I have a web application that is developed in CakePHP. One part of the application collects the user's location. Currently, we do this by collecting a zipcode from the user. This zipcode is then converted into latitude and longitude. The lat and long are stored in our database and then later used to display the location on a map.
Since zipcode isn't very accurate, we'd like to add the HTML5 geolocation function. Basically, instead of asking for the zipcode, it'd collect the lat and long using geolocation. However, if they do not allow collection of their location via geolocation, we need to collect their zipcode so that we at least have a general location.
This should be fairly simple; the backend is already in place....you're just adding geolocation collection on the front end.
I am already familiar with google geocoding. My previous project and current project now uses google geocoding which will record the the gps location of the visitor or if not available will use the assign ip address of the user and then translate it's coordinates to a location.