Thanks for everybody who has replied.
scrupul0us - I thought I had set the default value in the group_size example above. But as it wasn't incorporating the 'selection' I can see why the dropdown was not set.
djjjozsi - a great help, and I went through and added this code to all my listboxes.
What do I need to change so the text is printed to email and not the integer?
// form variables start
$acountry = array(0 => "Select",
1 => "England",
64 => "Other...");
This code works great, but it is far removed from my existing way of checking for Errors and I found myself in deep water when trying to combine the two. The previous code was split into sections: error array, error printing, mail sending, etc. I tried splitting your code up, so the form variables inside the form, while the error checks where grouped together, but I couldn't mix this type of code with the existing error code, so the existing send_request would override the second lot of php.
johanafm - when I asked for validation, I meant form checking, not html validation. The result you quoted came about because I added your code to the form, hoping it would select the existing choice - but didn't really know where to place it.
I have tried to search hk2.php.net resource, but it doesn't really give tutorials, just complicated raw code. It's hard to know where to start when you don't know the correct terms!
Thanks for your help.