Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Managing Web Site Data CS 320 Web Site Data How do computer programs store data? Main memory: volatile Disk: permanent By definition, Web pages are stateless and do not store data Browser Session Begins when the user opens the browser and connects to a site Ends when the user navigates to a new page or closes the browser All input data is lost... What kind of data might you want to store across pages during a single visit to a Web site? What kind of data might you want to store across multiple visits to the same Web site? Approaches for Storing Web Page Data Between Web pages in the same visit: Session variables Temporary cookies Across multiple visits to a site: Persistent cookies Databases Specific Topics Session variables Cookies Databases Session Variables When you request a Web page, the Web server creates a session object corresponding to your browser session This information is stored in the Web server's main memory Sessions have attributes that you can retrieve and display using program commands Session Variables A program running on the Web server can create session variables that store data values associated with a specific browser session Values are stored in Web server RAM and associated with the session object Session Timeout Intervals By default, server/browser sessions "time out" (close) after a specific period of inactivity: Microsoft IIS: 20 minutes Tomcat: 30 minutes You can change these values to longer/shorter ones At that point, the session closes and the session object is destroyed All session variable data is lost! Limitations of Session Variables Usually have a limited size Often limited to a maximum size of 300 characters Values are lost when the session ends or times out Specific Topics Session variables Cookies Databases What is a Cookie? Data item stored on the client workstation Can (theoretically) be read/modified only by Web pages associated with the same Web server domain that originally created it Cookie types: Temporary (session): only lasts during the current session Stored in client (browser) RAM Can be read only in current browser session Persistent: stores data in the client file system that is available across multiple browser sessions Cookie Data Structure Name/value pairs: cookie_name=cookie_value Example: currUsername="morrisjp" Cookie Options Client-side Created using JavaScript Server-side Created using a server-side program Limitations of Cookies Typically, browsers have limits on persistent cookies: Maximum of 20 cookies per Web site Maximum of 300 cookies total Each cookie can store a maximum of 4 KB of data... More Limitations of Cookies Stored locally If you use multiple computers, you will have different sets of cookies Possibility of: Information theft Cookie poisoning Other Web sites change cookie contents Profiling Marketers create cookies that are shared among sites Users can disable cookies in their browser Specific Topics Session variables Cookies Databases What is a database? Program for storing data Structures data in a tabular format Maintains relationships among data items Example: customers make reservations Has built-in programs to perform the basic data handling tasks Insert, update, delete, retrieve Has built-in features for managing multiple users, security, backups, etc. Web/Database Architecture Data Base Commonly-used: •mySQL •Access •SQL Server •Oracle Client workstations Web server(s) Database server N e t w o r k Server-Side Programs N e t w o r k Browser Browser Browser Programs that: • Form queries based on user inputs • Display retrieved data • Insert/update/delete user data When does a Web site need a database? When the site needs to collect and store data from site users Usernames/passwords for site access Product selection and shipping information User inputs that need to be visible to other users Test Yourself: For an Ecommerce Web site, what would you use to store a user's shipping information (name, address)? a) b) c) d) e) Session variables Temporary cookie Persistent cookie Database None of the above Test Yourself: For an Ecommerce Web site, what would you use to store a user's shipping information (name, address)? a) b) c) d) e) Session variables Temporary cookie Persistent cookie Database None of the above Test Yourself: For an Ecommerce Web site, what would you use to store a user's shopping cart contents? a) b) c) d) e) Session variables Temporary cookie Persistent cookie Database None of the above Test Yourself: For an Ecommerce Web site, what would you use to store a user's shopping cart contents? a) b) c) d) e) Session variables Temporary cookie Persistent cookie Database None of the above Test Yourself: For an Ecommerce Web site, what would you use to store a user's credit card information? a. b. c. d. e. Session variables Temporary cookie Persistent cookie Database None of the above Test Yourself: For an Ecommerce Web site, what would you use to store a user's credit card information? a. b. c. d. e. Session variables Temporary cookie Persistent cookie Database None of the above