I also found sone pages from an old site that works, and at least spotted the difference in the code. I copied it in, and it half works in the page below.
The validation seems to work, in that the fields need to be filled, and it takes you to the confirm page, but no error messages are appearing on the checkout page.
Very possibly because its never good to copy and paste code like that, without doing it properly!
But for the reference here's the link, and attached the files.