If I type my location in as “CITY, STATE”, I do not get the little weather status at the top of the screen. If I change it to a zip code, however, it works. If I had to guess without looking at the code, I’d say you weren’t properly encoding your strings for URLs when you query for the WOEID (for shame) :).
Edit: You probably already know this, but just in case I’m not clear. When I say properly encoding URLs, I mean coverting things like spaces to “+” and commas to “%2C”. There are php functions you can use for this.