Variables are not a requisite for this type of action, just a little extra thought.
Consider the following script:
:state=0,activated=1:state=1
:state=1,plrwithinzone=1:<Do something for when the player walks into the zone>
:state=1,activated=0:state=0
There, giving that code to a triggerzone will make it not do anything until it has been activated by another entity. After it has been activated, then it will do something when the player enters the zone.
The one and only,
Whosoever says, "Don't sweat the small stuff," is obviously not a programmer.