Have you tried resetting the password to what you think it is in the router in case someone changed it, or it has a Cap/Lowercase, etc, that you weren't aware of?
What type of encryption are you using? If you're using WEP have you tried WPA2 (if supported by your router)? I've found that in my personal experience using a WPA2 encryption type solves most password issues since it can use a standard passcode over a HEX key.
I had no problems for over a year, and then after upgrading to 4.3.2 boom I was having the same problems of being unable to connect to wifi on the iphone at home (other devices worked fine). I upgraded to 4.3.3 but it continued & then I thought I would try online for help!
My iphone was showing it was connected in the settings page, but not in the top left of the home screen, and if I tried to update apps etc it could tell me to connect to wifi.
I tried all of the solutions suggested by others here, except updating firmware because I had no idea how to do that!
I have at last (fingers crossed it continues) managed to solve the problem using a combination of the suggestions here. I will list what I did in the order I did it, just incase it helps anyone else. (Apologies in advance Im no computer expert!!)
1. Settings > WiFi > clicked on my network > Forget this network
2. Settings > WiFi > Ask to join networks > OFF
3. Settings > WiFi> OFF
4. Unplugged my router for over 30 minutes I had tried spells of ten minutes etc before with no luck
5. Switched router back on waited 5 minutes
6. Settings > WiFi > ON
7. Settings > WiFi > clicked on my network > enter router password
As I say I tried other things that worked for others and it didn't help me, but this worked for me & it may help someone else.
i guess ill try anything now.
My WIFI started working again all of a sudden, so i thought nothing of it. I get home today after picking up my cousins from school, and bang, the WIFI is gone again.
I can see the network, i just cant access it. Put in the password and all.
I dont understand why they just cant make things work.