I gave this answer to a disconnection query earlier but there is some resonance here.
I think I can guess what is happening. When I first started using free hotspots I was connecting with no problem and often they will have a logon screen to insert the locale password. Some places however like hotels seem to give free access for a limited time or for first use without logging in and then later they will expect you to register.
When I have returned to these places a second time I find that the phone finds the network and claims to be connected but every use returns a network error or appears to connect and get cut off. In fact I am getting rerouted to their logon page, only it seems to often only open in background in gingerbread so you don't know it is happening.
After fiddling around you can sometimes get the logon page to show and then register. Often I can only do this by attempting a google search. Google somehow seems to know to route via the logon pages whereas other apps play ignorant."