If Im not completelely blind I see and exra "," character in the query:
$query .= "zip = '" . prepareData($_POST['zip']) . "'" . ',';
..Should be
$query .= "zip = '" . prepareData($_POST['zip']) . "' ";
Also I dont see the actual query sent to mysql ( mysql_query($query) ).
And btw, that if sentence dont make much sense. Now its done so that if submit is pressed it does the query, else its printing mysql_error(). That mysql_error should be put after the query is made to see what was wrong.