/execute @p ~ ~ ~ testforblock ~ ~-1 ~ snow
to check for if there is snow under the player. Though it seems very iffy wear the exact -1 block is and does not always read true even when I am standing on the snow block and seems to only work if standing in the dead center of the block. Is there away to make this a little more lenient. I've even set a line to check for each surrounding block by adding -1,1,0 to each possible x and z and it still gives issues with not detecting I am on snow.
I have it running on a /fill clock so running at 20 ticks a second???
EDIT: Found part of the problem. Minecraft was wierdly lagging and the ticks were running slow. So when the /fill clock should have been running at 20 ticks per second it was more like 1.