Ah HA! I've fixed it.
I don't know why, but for some reason strtotime() didn't seem to work - jsut kept giving weird dates. I gave up on it in the end and used an implode/explode to get the date from 3 inputs rather than just one.
Here's the code for the implode and entry into the db:
$errorlist = array();
$company = $_POST['company'];
$jobtitle = $_POST['jobtitle'];
$jobdesc = $_POST['jobdesc'];
$contact = $_POST['contact'];
$day = $_POST['day'];
$month = $_POST['month'];
$year = $_POST['year'];
//validate the fields
if (trim($_POST['company']) == '') {$errorlist[] = 'You have not entered a Company';}
if (trim($_POST['jobtitle']) == '') {$errorlist[] = 'You have not entered a Job Title';}
if (trim($_POST['jobdesc']) == '') {$errorlist[] = 'You have not entered a Job Description';}
if (trim($_POST['contact']) == '') {$errorlist[] = 'You have not entered any Contact or Application details';}
if (trim($_POST['day']) == '') {$errorlist[] = 'You have not entered a day';}
if (trim($_POST['month']) == '') {$errorlist[] = 'You have not entered a month';}
if (trim($_POST['year']) == '') {$errorlist[] = 'You have not entered a year';}
if (!checkdate($_POST['month'], $_POST['day'], $_POST['year'])){$errorlist[] = 'Please enter a valid date';}
if (sizeof ($errorlist) == 0)
{
$connector = new DbConnector();
$timestamp = array($year, $month, $day);
$closingdate = implode("-", $timestamp);
$insertQuery = "INSERT INTO jobs (company, jobtitle, jobdesc, contact, dateadded, closingdate) VALUES ('$company', '$jobtitle', '$jobdesc', '$contact', NOW(), '$closingdate')";
$result = $connector->query($insertQuery) or exit('Error in query: ' . $insertQuery . ' ' . mysql_error());
echo 'Update Successful<br><a href="jobsadmin.php">Click here to return to the jobs admin menu</a>';
Of course, the next problem was how to get it out of the database and back INTO the form for the UPDATE page! For this I used an explode/list function:
//Get the date formatted & ready to insert
$closingdate = explode('-', $row['closingdate']);
list($year, $month, $day) = $closingdate;
Now it's in the same format as the NEW page, and works with the same code. The only thing that changes is the SQL query.
I'm so glad I got around this - been a great learning experincee!