Thanks Weedpacket,
Not sure where the % came from but I removed them and turned on the error echoing and got the following message:
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'ID = between 5000 and 16000 order by tape_id' at line 1: select * from tapes where Tape ID = between 5000 and 16000 order by tape_id.
This error was fairly obviously in that the 'Tape ID' identified above was not a valid database field and all that was required here was a check of the option value for the $rangetype in the form.
This fixed the tape_id and now the search for tape_id's works fine, but the date-related searches do not. Is there a field type other than text that I should be using to perform multi-format ranges (i.e. some text/number or date-related)?
I guess part of it is working but now I'm stumped again.
Any thoughts appreciated.
Thanks.