If I were you, I'd pick a project and then cater your learning to that project. with mobile vs web apps, we're talking about completely different languages.
This. What matters most is what you want to create. When you've decided this, it almost doesn't matter what you program it in as long as you can get it done. If you're confused about which one to pick, just pick a widely adopted language that has a lot of community support and you'll have more than enough to learn with.
There definitely are a lot of choices-they can be paralyzing. I agree with bcrawford on this one-pick a language to do the web services portion first. Then move on to the next level of the stack. In your case this would be either the data level (MySql) or mobile app level (iPhone).
I don't know if this helps, but if I were starting from scratch today I'd choose either Ruby or Python for the web services level. They're fun, easy to learn languages that are powerful enough to get the job done.