Why not just drop the left zeros from inputs that cannot have it? intval($_POST['field']) or ltrim($_POST['field'], '0') can do the trick. IMHO it's better to silent drop it than show an error message.