QUOTE
I have someone who asked me if I could create a web-based app for him.
Uh oh. Well, I hope you're prepared for all the support requests down the road...
QUOTE
What language would someone usually program this in?
A high level language. Well, one that has low development times faciliated by support for good high level logic, good large set of libraries, and ideally, has one or more good web development frameworks.
I would do this in Python because that's the high level language I'm most comfortable with. PHP and C# also fit the requirements above, like Python. Since you have experience with C#, it follows that you should investigate C# and ASP.NET first, as you will be most productive in a language and platform you are familiar with.
QUOTE
Is there a language similar to these that can be used on a web server?
Well, both C++ and C# can be used, under certain mechanisms. C# for example, translates to running an ASP.NET based web application. And C++, well, if you have to ask...
QUOTE
Is it easy to go from C++ on a computer app to a language for a web app?
It's not really the syntax that should be the problem. Obviously, you've got costs in time to get up to speed with a new language, its idioms, platform, etc., but what you'll really struggle with is knowledge of the web development architecture and then protocols and a lot of language agnostic things.
Occasionally it tends to be language specific. For example, if you chose PHP, how do you use PHP with a webserver? Or with Python, how do you use Python with a webserver? There's answers to these questions, (standards like CGI, FCGI, WSGI, or Apache specific modules like mod_php and mod_python), but then you have questions like what is WSGI?
And some of it is high level concerns. For example, security. How do you setup secure authentication? And the answers to those questions depend on knowledge about web architecture (for example, do you understand the stateless nature of HTTP, about cookies (why do they exist?)).
It's a daunting web of information, so people approach web development in largely one of two ways. The first is the "ignorance is bliss" kind of mentality. People just find the easiest entry point (whatever I can get working!) and then hack something together. Why it works, how it works, does it work properly, securely, aren't really dealt with until the issue rears its ugly head. Usually as a security issue or oddball bugs or later maintenance issues.
The other approach is to find an entry point, and work on building the knowledge slowly. Early work is going to be very much dependent on set packages, instructions, code snippets, and the like. But you focus on building that knowledge. But this takes time, so unless you feel happy about handing over to the person some kind of cruddy hackjob that seems to work, and then run away to the other end of the earth:
It's why the first sentence I said was an uh-oh. I kind of rambled here, but I've seen this kind of "someone asked me to make a web app" situation before, and I always feel like throwing out my thoughts. I hope you understand that your challenge doesn't simplify to "can I learn a new language". If it were only that easy...