If your iPhone is jailbroken, you can follow the instructions below which seem to have worked for the vast majority of people. If it's not jailbroken, then I really don't know what to suggest.
1. Open Cydia and search for “Legacy” – Install the first one on top. (TMobile US)
2. Once installed you’ll need to reset your network settings. Settings > General > Reset > Reset Network Settings. Confirm
3. Now go to Settings > General > Network > and make sure Data Roaming is set to ‘On’
4. Now go to Cellular Data Network > and enter the following:
5. APN: epc.tmobile.com (for MMS This SHOULD be wap.voicestream.com)
6. APN: wap.voicestream.com for Cellular Data
7. MMSC: 216.155.174.84/servlets/mms
8. Proxy: 216.155.165.50:8080
9. Go all the way back to Settings and then press Home.
10. Turn off the phone.
11. Wait for the phone to completely power off, wait 30 seconds and then power back on.
12. If your phone crashes and you get the Sad Phone Face, it’s fine, unlock the phone and reset the Springboard if need be.
13. Now have someone send you a Picture Message and make sure you can send out MMS.