For web based applications, PHP is the best application. PHP has the largest community to help you out in any type of problem. Since its open source, you will find everything related to php very easily.
You can choose C# alternatively JAVA, I think both are better ,depend on you ,which one you have to take.
Yes,In my opinion php is the best, Light weight with lots of libraries and support, Open source and even hosting is also cheap .
First of it's all about preferences. I have to correct you in so many things. Java is a programming language while .NET is framework. You can use C# or Visual Basic or others in .NET but it's up to you. For web you can use many of those and you have a lot of choice like: Ruby on rails (which is very good) ASP.NET a part of .NET framework for Web development, PHP, or JSP if you prefer Java programming language. And to set some things clear (HTML, CSS and JavaScript) are the languages that set up basic static web pages. HTML is general marque up for web, CSS is for stayling the elements on web page and JavaScript is for behavior on the page. CSS is not a programming language it's a styling language
If you are going to develop web services then i would recommend .Net language. It's best for web services. Also, it is easy to develop amazing interfaces in .Net.
php is good and very widely used web application programming language. comparing nosql with rdbms. i think both have its strengths. you can use it according to your needs. eg. transaction processing is not supported by certain nosql databases , so you would require rdbms . but some of the data representations and volume of data can be supported by nosql databases would be difficult to implement in rdbms. i recently read that there is also some hybrid model which combines certain rdbms like oracle with nosql like mongodb. Nosql databases can be columnar based, graph based, document oriented, key-value based etc. so you have to choose among various nosql databases. The term Nosql means not just SQL.