Web applications can respond to user interaction and can have dynamic behavior when you use a programming language aside from HTML. There are two types of programming in Web applications: client-side and server-side programming.

Client-side programming means using a programming language that the user's Web browser will execute. The most standard programming language by far for client-side programming is JavaScript™. JavaScript can be included in separate text files that are referenced by the HTML files, or you can put it directly into the HTML in special HTML tags called script tags. When the user's Web browser encounters these script tags, it executes the JavaScript code contained in those tags or files.

Client-side programming has certain limitations, because code that is executed by a Web browser does not have easy, direct access to a database or files. Client-side programming can also have performance limitations, as not all users' computers are equally powerful, and not all Web browsers have the same performance.

Other examples of client-side programming include computer languages that are compiled to a file and executed by the browser using a browser plug-in. An example of code that is used in this way is Adobe Flex MXML and ActionScript, which are compiled to an SWF file. The browser downloads the SWF file and executes it (as long as the browser has the correct Adobe Flash Player plug-in installed). Other technologies include Microsoft® Silverlight and the JavaFX technology.

To learn more about client-side programming with Adobe Flex, see:

Server-side programming refers to using computer languages to write code and execute it on the Web server. This execution takes place after a user has made a request using a URL and before the Web server software sends the HTML back to the user's Web browser. Web applications that include server-side programming often access a database or files on the Web server. Examples of Web applications that use extensive server-side programming are e-commerce sites, social-networking sites, and wikis.

Many more options are available for server-side programming, but these options require you to install additional software and make it available on the Web application server. The Web application uses this additional software—often in the form of an interpreter or module—to execute the code located on the server. Because server-side programming has this dependency, you must make sure that if your Web application is installed at a hosting provider, your provider supports the server-side computer language.

An example of a server-side Web application programming language is PHP. To use PHP in a Web application, you put PHP code in files that are accessible to your Web server. You must also make sure that a PHP interpreter (or module) is installed and configured for the Web server. If you're using a hosting provider, you must make sure your provider supports PHP.

When a user accesses the PHP using their browser, the Web application server software locates the PHP file in the Web server's file system. The server executes the PHP and usually generates HTML that will be sent back to the user's Web browser.

To learn more about PHP, see PHP project resources

You can use many other programming languages to build Web applications today. Examples include JSP and Ruby.

To learn more about server-side programming, see: