While L.D.James' answer (no longer here) put me onto the whole users and groups issue it was not wholly helpful. Thankfully it was enough to get Google involved. Here are the steps I took to solve the problem.
The folder was owned by root which would not be a good group to add a user to. The solution was to create a special group. I called it "www" because I'm inventive like that. Then to move the html folder to that group.
<user> is the username for the user on my system
- su to root (or use sudo on every line)
groupadd www (Make group)
usermod -a -G www <user> (Add the user to the group)
- navigate to /var/www/
chgrp www html (set the folder to the group)
chmod g+rwx html (allow group access to folder - see also http://ss64.com/bash/chmod.html which was quite helpful)
Result I can now upload files and could have other users also do so should I wish to.
- At some prompting I have also set Apache to run as the www group.
This is done by setting the environmental variables (the exact location of which differs depending on flavour of Linux).
Despite other answers the correct way to do this is:
export APACHE_RUN_USER=www
export APACHE_RUN_GROUP=www
The above assumes that I have also created a user called www whereas because this is a dev box on my desk I am happy for Apache to run as root for now.
Found out about setting apache's user and group via: What user should apache and PHP be running as? What permissions should /var/www files have?