D'you know as I wrote that I thought the brackets might be wrong ... anyway, my original answer is not exactly what you want... the trigger will not keep firing while there is somebody in it (of course) it will only fire once. It won't fire again until the area is cleared and then somebody comes back into it. Duh-oh. I don't think you're doing anything wrong.
You could try concentric rings of triggers, each slightly smaller than the last. Therefore, if you move close to the fire, you will take more and more damage though if you stay where you are you won't.
More elegant would be a script. Not quite sure how to do it.... you'd need to pass all the units in the trigger area to the script, then run a loop checking their distance from the fire and applying damage accordingly ... if they left the area that would be fine - the distance command will cope with that, but I'm not sure how you'd handle new units coming into the area while the script was running. Any ideas, anybody?