Dynamic web page
Encyclopedia
A dynamic web page is a kind of web page
that has been prepared with fresh information (content and/or layout
), for each individual viewing. It is not static
because it changes with the time (e.g. news
content), the user (e.g. preferences in a login session
), the user interaction
(e.g. web page game
), the context (e.g. parametric customization), or any combination thereof.
to change interface behaviors within a specific web page
, in response to mouse or keyboard actions or at specified timing events. In this case the dynamic behavior occurs within the presentation
.
Such web pages use presentation technology called rich interfaced pages. Client-side
scripting language
s like JavaScript
or ActionScript
, used for Dynamic HTML
(DHTML) and Flash
technologies respectively, are frequently used to orchestrate media types (sound, animations, changing text, etc.) of the presentation. The scripting also allows use of remote scripting
, a technique by which the DHTML page requests additional information from a server, using a hidden Frame
, XMLHttpRequest
s, or a Web service
.
The Client-side
content is generated on the user's computer. The web browser retrieves a page from the server, then processes the code embedded in the page (often written in JavaScript
) and displays the retrieved page's content to the user.
The innerHTML property (or write command) can illustrate the client-side dynamic page generation: two distinct pages, A and B, can be regenerated as
There are also some utilities and frameworks for converting HTML files into JavaScript files. For example webJS uses innerHTML property for rendering pages from converted HTML on client-side.
The first "widespread used" version of JavaScript
was 1996 (with Netscape 3
an ECMAscript
standard).
) is used to change the web content
on various web page
s, or to adjust the sequence of or reload of the web pages. Server responses may be determined by such conditions as data in a posted HTML form, parameters in the URL
, the type of browser being used, the passage of time, or a database or server state
.
Such web pages are often created with the help of server-side
languages such as ASP
, ColdFusion
, Perl
, PHP
, and other languages. These server-side languages often use the Common Gateway Interface
(CGI) to produce dynamic web pages. Two notable exceptions are ASP.NET
and JSP
, which reuse CGI concepts in their APIs but actually dispatch all web requests into a shared virtual machine.
Server-side dynamic pages can also use the first kind of dynamic content on the client side.
While VM-based server-side languages and CGI would be preferred for new development, some web-servers also support Server Side Includes (typically for a file extension such as .shtml), and Jhtml
was a Java server-side technology developed before JSP.
is a web development technique for dynamically interchanging content with the server-side, without reloading the web page. Google Maps
is an example of a web application
that uses Ajax techniques and database.
, as standard, since 1996. The web browser
s explosion started with 1993's Mosaic
. It is obvious, however, that the concept of dynamically driven websites predates the internet, and in fact HTML. For example, in 1990, before the general public use of the internet, a dynamically driven remotely accessed menu system was implemented by Susan Biddlecomb, at the University of Southern California
BBS
on a 16 line TBBS
system with TDBS add-on.
Web page
A web page or webpage is a document or information resource that is suitable for the World Wide Web and can be accessed through a web browser and displayed on a monitor or mobile device. This information is usually in HTML or XHTML format, and may provide navigation to other web pages via hypertext...
that has been prepared with fresh information (content and/or layout
Page layout
Page layout is the part of graphic design that deals in the arrangement and style treatment of elements on a page.- History and development :...
), for each individual viewing. It is not static
Static web page
A static web page is a web page that is delivered to the user exactly as stored, in contrast to dynamic web pages which are generated by a web application....
because it changes with the time (e.g. news
News
News is the communication of selected information on current events which is presented by print, broadcast, Internet, or word of mouth to a third party or mass audience.- Etymology :...
content), the user (e.g. preferences in a login session
Login
Login is the method whereby a user obtains access to a computer system.Login may also refer to:*Magazines:** LOGiN, published by Enterbrain** ;login:, published by USENIX* Login, Carmarthenshire, an hamlet in Carmarthenshire...
), the user interaction
User interface
The user interface, in the industrial design field of human–machine interaction, is the space where interaction between humans and machines occurs. The goal of interaction between a human and a machine at the user interface is effective operation and control of the machine, and feedback from the...
(e.g. web page game
Browser game
A browser game is a computer game that is played over the Internet using a web browser. Browser games can be created and run using standard web technologies or browser plug-ins. Browser games include all video game genres and can be single-player or multiplayer...
), the context (e.g. parametric customization), or any combination thereof.
Client-side scripting and content creation
Using client-side scriptingClient-side scripting
Client-side scripting generally refers to the class of computer programs on the web that are executed client-side, by the user's web browser, instead of server-side...
to change interface behaviors within a specific web page
Web page
A web page or webpage is a document or information resource that is suitable for the World Wide Web and can be accessed through a web browser and displayed on a monitor or mobile device. This information is usually in HTML or XHTML format, and may provide navigation to other web pages via hypertext...
, in response to mouse or keyboard actions or at specified timing events. In this case the dynamic behavior occurs within the presentation
Look and feel
In software design, look and feel is a term used in respect of a graphical user interface and comprises aspects of its design, including elements such as colors, shapes, layout, and typefaces , as well as the behavior of dynamic elements such as buttons, boxes, and menus...
.
Such web pages use presentation technology called rich interfaced pages. Client-side
Client-side
Client-side refers to operations that are performed by the client in a client–server relationship in a computer network.Typically, a client is a computer application, such as a web browser, that runs on a user's local computer or workstation and connects to a server as necessary...
scripting language
Scripting language
A scripting language, script language, or extension language is a programming language that allows control of one or more applications. "Scripts" are distinct from the core code of the application, as they are usually written in a different language and are often created or at least modified by the...
s like JavaScript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....
or ActionScript
ActionScript
ActionScript is an object-oriented language originally developed by Macromedia Inc. . It is a dialect of ECMAScript , and is used primarily for the development of websites and software targeting the Adobe Flash Player platform, used on Web pages in the form of...
, used for Dynamic HTML
Dynamic HTML
Dynamic HTML, or DHTML, is an umbrella term for a collection of technologies used together to create interactive and animated web sites by using a combination of a static markup language , a client-side scripting language , a presentation definition language , and the Document Object Model.DHTML...
(DHTML) and Flash
Adobe Flash
Adobe Flash is a multimedia platform used to add animation, video, and interactivity to web pages. Flash is frequently used for advertisements, games and flash animations for broadcast...
technologies respectively, are frequently used to orchestrate media types (sound, animations, changing text, etc.) of the presentation. The scripting also allows use of remote scripting
Remote Scripting
Remote Scripting is a technology which allows scripts and programs that are running inside a browser to exchange information with a server. The local scripts can invoke scripts on the remote side and process the returned information...
, a technique by which the DHTML page requests additional information from a server, using a hidden Frame
IFrame
iFrame can be:* I-frames, in video compression; see video compression picture types* iFrame * The HTML iframe element....
, XMLHttpRequest
XMLHttpRequest
XMLHttpRequest is an API available in web browser scripting languages such as JavaScript. It is used to send HTTP or HTTPS requests directly to a web server and load the server response data directly back into the script. The data might be received from the server as XML text or as plain text...
s, or a Web service
Web service
A Web service is a method of communication between two electronic devices over the web.The W3C defines a "Web service" as "a software system designed to support interoperable machine-to-machine interaction over a network". It has an interface described in a machine-processable format...
.
The Client-side
Client-side
Client-side refers to operations that are performed by the client in a client–server relationship in a computer network.Typically, a client is a computer application, such as a web browser, that runs on a user's local computer or workstation and connects to a server as necessary...
content is generated on the user's computer. The web browser retrieves a page from the server, then processes the code embedded in the page (often written in JavaScript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....
) and displays the retrieved page's content to the user.
The innerHTML property (or write command) can illustrate the client-side dynamic page generation: two distinct pages, A and B, can be regenerated as
document.innerHTML = A
and document.innerHTML = B
; or "on load dynamic" by document.write(A)
and document.write(B)
.There are also some utilities and frameworks for converting HTML files into JavaScript files. For example webJS uses innerHTML property for rendering pages from converted HTML on client-side.
The first "widespread used" version of JavaScript
Client-side JavaScript
Client-side JavaScript is JavaScript that runs on the client-side. While JavaScript was originally created to run this way, the term was coined because the language is no longer limited to just client-side, since server-side JavaScript is now available.-Environment:The most common Internet media...
was 1996 (with Netscape 3
Netscape
Netscape Communications is a US computer services company, best known for Netscape Navigator, its web browser. When it was an independent company, its headquarters were in Mountain View, California...
an ECMAscript
ECMAScript
ECMAScript is the scripting language standardized by Ecma International in the ECMA-262 specification and ISO/IEC 16262. The language is widely used for client-side scripting on the web, in the form of several well-known dialects such as JavaScript, JScript, and ActionScript.- History :JavaScript...
standard).
Server-side scripting and content creation
A program running on the web server (server-side scriptingServer-side scripting
Server-side scripting is a web server technology in which a user's request is verified by running a script directly on the web server to generate dynamic web pages. It is usually used to provide interactive web sites that interface to databases or other data stores. This is different from...
) is used to change the web content
Web content
Web content is the textual, visual or aural content that is encountered as part of the user experience on websites. It may include, among other things: text, images, sounds, videos and animations....
on various web page
Web page
A web page or webpage is a document or information resource that is suitable for the World Wide Web and can be accessed through a web browser and displayed on a monitor or mobile device. This information is usually in HTML or XHTML format, and may provide navigation to other web pages via hypertext...
s, or to adjust the sequence of or reload of the web pages. Server responses may be determined by such conditions as data in a posted HTML form, parameters in the URL
Uniform Resource Locator
In computing, a uniform resource locator or universal resource locator is a specific character string that constitutes a reference to an Internet resource....
, the type of browser being used, the passage of time, or a database or server state
State (computer science)
In computer science and automata theory, a state is a unique configuration of information in a program or machine. It is a concept that occasionally extends into some forms of systems programming such as lexers and parsers....
.
Such web pages are often created with the help of server-side
Server-side
Server-side refers to operations that are performed by the server in a client–server relationship in computer networking.Typically, a server is a software program, such as a web server, that runs on a remote server, reachable from a user's local computer or workstation...
languages such as ASP
Active Server Pages
Active Server Pages , also known as Classic ASP or ASP Classic, was Microsoft's first server-side script engine for dynamically-generated Web pages. Initially released as an add-on to Internet Information Services via the Windows NT 4.0 Option Pack Active Server Pages (ASP), also known as Classic...
, ColdFusion
ColdFusion
In computing, ColdFusion is the name of a commercial rapid application development platform invented by Jeremy and JJ Allaire in 1995. ColdFusion was originally designed to make it easier to connect simple HTML pages to a database, by version 2 it had...
, Perl
Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...
, PHP
PHP
PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...
, and other languages. These server-side languages often use the Common Gateway Interface
Common Gateway Interface
The Common Gateway Interface is a standard method for web servers software to delegate the generation of web pages to executable files...
(CGI) to produce dynamic web pages. Two notable exceptions are ASP.NET
ASP.NET
ASP.NET is a Web application framework developed and marketed by Microsoft to allow programmers to build dynamic Web sites, Web applications and Web services. It was first released in January 2002 with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages ...
and JSP
JSP
JSP may stand for:* Jake Shea's Parties* Joe Six-Pack, Attributed to Sarah Palin, 2008 vice presidential candidate* Ji-Sung Park, South Korean footballer* Jacketed, Soft Point, a type of bullet* Jackson Structured Programming* Japan Socialist Party...
, which reuse CGI concepts in their APIs but actually dispatch all web requests into a shared virtual machine.
Server-side dynamic pages can also use the first kind of dynamic content on the client side.
While VM-based server-side languages and CGI would be preferred for new development, some web-servers also support Server Side Includes (typically for a file extension such as .shtml), and Jhtml
JHTML
JHTML stands for Java HTML. This is a page authoring system developed at Art Technology Group . Files with a ".jhtml" filename extension contain standard HTML tags in addition to proprietary tags that reference Java objects running on a special server setup to handle requests for pages of this...
was a Java server-side technology developed before JSP.
Combining client and server side
AjaxAjax (programming)
Ajax is a group of interrelated web development methods used on the client-side to create asynchronous web applications...
is a web development technique for dynamically interchanging content with the server-side, without reloading the web page. Google Maps
Google Maps
Google Maps is a web mapping service application and technology provided by Google, free , that powers many map-based services, including the Google Maps website, Google Ride Finder, Google Transit, and maps embedded on third-party websites via the Google Maps API...
is an example of a web application
Web application
A web application is an application that is accessed over a network such as the Internet or an intranet. The term may also mean a computer software application that is coded in a browser-supported language and reliant on a common web browser to render the application executable.Web applications are...
that uses Ajax techniques and database.
Disadvantages
- Search engineSearch engineA search engine is an information retrieval system designed to help find information stored on a computer system. The search results are usually presented in a list and are commonly called hits. Search engines help to minimize the time required to find information and the amount of information...
s work by creating indexes of published HTMLHTMLHyperText Markup Language is the predominant markup language for web pages. HTML elements are the basic building-blocks of webpages....
web pages that were, initially, "static". With the advent of dynamic web pages, often created from a private database, the content is less visible. Unless this content is duplicated in some way (for example, as a series of extra static pages on the same site), a search may not find the information it is looking for. It is unreasonable to expect generalized web search engineWeb search engineA web search engine is designed to search for information on the World Wide Web and FTP servers. The search results are generally presented in a list of results often referred to as SERPS, or "search engine results pages". The information may consist of web pages, images, information and other...
s to be able to access complex database structures, some of which in any case may be secure.
History
It is difficult to be precise about "dynamic web page beginnings" or chronology, because the precise concept makes sense only after the "widespread development of web pages": HTTP has been in use since 1990, HTMLHTML
HyperText Markup Language is the predominant markup language for web pages. HTML elements are the basic building-blocks of webpages....
, as standard, since 1996. The web browser
Web browser
A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...
s explosion started with 1993's Mosaic
Mosaic (web browser)
Mosaic is the web browser credited with popularizing the World Wide Web. It was also a client for earlier protocols such as FTP, NNTP, and gopher. Its clean, easily understood user interface, reliability, Windows port and simple installation all contributed to making it the application that opened...
. It is obvious, however, that the concept of dynamically driven websites predates the internet, and in fact HTML. For example, in 1990, before the general public use of the internet, a dynamically driven remotely accessed menu system was implemented by Susan Biddlecomb, at the University of Southern California
University of Southern California
The University of Southern California is a private, not-for-profit, nonsectarian, research university located in Los Angeles, California, United States. USC was founded in 1880, making it California's oldest private research university...
BBS
BBS
-Technologies:* Bulletin Board System, a computer that allows users to dial into the system over a phone line or telnet connection* BIOS Boot Specification, a system firmware specification related initial program load...
on a 16 line TBBS
TBBS
TBBS is a multiline DOS based commercial bulletin board system software package written in 1983 by Philip L. Becker. He originally created the software as the result of a poker game with friends that were praising the BBS software created by Ward Christensen. Mr. Becker said he could do better and...
system with TDBS add-on.
See also
- Common Gateway InterfaceCommon Gateway InterfaceThe Common Gateway Interface is a standard method for web servers software to delegate the generation of web pages to executable files...
- Deep webDeep webThe Deep Web refers to World Wide Web content that is not part of the Surface Web, which is indexed by standard search engines....
- Rich Internet applicationRich Internet applicationA Rich Internet Application is a Web application that has many of the characteristics of desktop application software, typically delivered either by way of a site-specific browser, via a browser plug-in, independent sandboxes, extensive use of JavaScript, or virtual machines...
- Static web pageStatic web pageA static web page is a web page that is delivered to the user exactly as stored, in contrast to dynamic web pages which are generated by a web application....
- TBBSTBBSTBBS is a multiline DOS based commercial bulletin board system software package written in 1983 by Philip L. Becker. He originally created the software as the result of a poker game with friends that were praising the BBS software created by Ward Christensen. Mr. Becker said he could do better and...
- Web template systemWeb template systemA Web template system describes the software and methodologies used to produce web pages and for deployment on websites and delivery over the Internet. Such systems process web templates, using a template engine...