This is what I would love to do, learn a language while making something useful, sounds like a daft question but can anyone suggest a app to build and maybe where to start? Rest I can pick up. Again comes to the question what language do I build my web app in?
And I second this advice, you are starting, so try and learn a single language that can enable you to develop a working application; that will lead you to the other parts of the stack (wich would include, among others, HTML, CSS, JavaScript, JSON objects, a server-side language, SQL and a lot of such crap that only nerds like us can really love).
So, a standard functionality for web applications is commonly referred to as CRUD. Many applications exist solely to let users Create records, Retrieve and Update existing records or Delete records. It's a very common pattern that, while it isn't very interesting in and of itself, will give you exposure to all the parts of a web application without bogging you down in questions of functionality (what does it mean for all the associated foo's if a bar record has its created date deleted?).
To do this, you'll need some mechanism to store records (usually a database of some sort, but flat files can work), some sort of server process to handle user requests (this is where a framework like Rails and possibly a server to contain this process come into the picture) and a web interface where users can actually input data into your system. If you hear the term "full stack" before, it roughly means this picture (and note that this doesn't really correspond to MVC if you've heard of that).
The canonical example in academia is to do a course scheduling app: students enroll in college and register for classes. Other typical options are the aforementioned to-do application or inventory for a store. Really, this is just window-dressing though - if I were you, I'd think it's a fine goal to have a good understanding of everything that happens from the moment a user first sees the interface to your app until the moment the database is done storing their changes.
And, if you really want a language recommendation, I'd go with either Ruby using Rails or Java using Play.