++Seumas. use strict and use warnings aren't things you tack on after you know what you're doing. They're the first lines you write in every program you write, starting with Hello World.
I don't understand why bluethundr would rather spend HOURS staring at non-working code and then post to Perlmonks and wait for a response, rather than simply avoiding problems by using what he knows is the correct style from the start. (This is the second node I've seen by him that fits this pattern; there may be others.)
But I do know it's not worth my time to debug his code and offer my suggestions until he takes those steps for himself. For one thing, since he's ignoring the simple and commonsense advice he's being universally offered, I suspect he would ignore whatever I recommended as well.