Before trying a restore, clear out all the network settings on the iPhone first.
Sounds like a problem between router and iPhone. Simply broadcast the SSID and use strong WPA2 security. Done.
I have my wireless network at home set up with the ESSID setting disabled so that the name of my network isn't broadcast publicly. I currently have multiple iPhones, iPods etc., all set-up to connect to this network. For some reason, my iPhone 4S will not maintain the connection when the ESSID is disabled. When the setting is enabled, the iPhone will find, connect, and maintain the connection, however once the ESSID setting is switched back to disabled the iPhone 4S losses it's connection and can't reconnect.
Any way to resolve this issue without a restore?
Thanks for your suggestions and assistance.
Note: This post was edited by a forum moderator to edit out signature link on 04/26/2012 at 9:17 AM PT

Chowhound
Comic Vine
GameFAQs
GameSpot
Giant Bomb
TechRepublic