A dynamic website design is one that changes or customizes content automatically and/or frequently based on certain criteria. The page composition is usually data-driven and collates information ad hoc each time a page is requested.
A website can be dynamic in one of two ways. The first is that the web page code is constructed dynamically. The second is that the web page content displayed varies based on certain criteria. The criteria may be pre-defined rules or may be based on variable user input.
A dynamic website also describes its construction or how it is built, and more specifically refers to the code used to create a single web page. A dynamic web page is generated on the fly by piecing together certain blocks of code, procedures or routines.
A dynamically-generated web page would call various bits of information from a database and put them together in a pre-defined format to present the reader with a coherent page.
It interacts with users in a variety of ways including by reading cookies recognizing users' previous history, session variables, server side variables etc., or by using direct interaction (form elements, mouseovers, etc.).
A site can display the current state of a dialogue between users, monitor a changing situation, or provide information in some way personalized to the requirements of the individual user.