Introduction to Web Interface Technology (CSE2030)

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

DT228/3 Web Development WWW and Client server model.
Kyung Hee University 1 1 Application Layer. 2 Kyung Hee University Position of Application Layer.
© 2010, Robert K. Moniot Chapter 1 Introduction to Computers and the Internet 1.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Introduction to Web Database Processing
Introduction to Web Application Architectures Web Application Architectures 18 th March 2005 Bogdan L. Vrusias
DT211/3 Internet Development Application Internet Development Application.
Week 2 IBS 685. Static Page Architecture The user requests the page by typing a URL in a browser The Browser requests the page from the Web Server The.
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
Introduction to Web Interface Technology (CSE2030)
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
© 2004, Robert K. Moniot Chapter 1 Introduction to Computers and the Internet.
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
2440: 141 Web Site Administration Web Server-Side Programming Professor: Enoch E. Damson.
ECA 228 Internet/Intranet Design I Intro to the Web.
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
INTRODUCTION TO WEB DATABASE PROGRAMMING
CS 299 – Web Programming and Design CS299: Web Programming and Design Instructor: Dr. Fang (Daisy) Tang.
1 CS 3870/CS 5870 Static and Dynamic Web Pages ASP.NET and IIS.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Dr. Azeddine Chikh IS444: Modern tools for applications development.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Week 7 Lecture Web Database Development Samuel Conn, Asst. Professor
Chapter 1: Introduction to Web
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
2013Dr. Ali Rodan 1 Handout 1 Fundamentals of the Internet.
5 Chapter Five Web Servers. 5 Chapter Objectives Learn about the Microsoft Personal Web Server Software Learn how to improve Web site performance Learn.
© 2002 by Prentice Hall 1 David M. Kroenke Database Processing Eighth Edition Chapter 14 Networks, Multi-Tier Architectures, and XML.
Introduction to Internet Programming (Web Based Application)
11/16/2012ISC329 Isabelle Bichindaritz1 Web Database Application Development.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
9 Chapter Nine Compiled Web Server Programs. 9 Chapter Objectives Learn about Common Gateway Interface (CGI) Create CGI programs that generate dynamic.
Chapter 4 Networking and the Internet. © 2005 Pearson Addison-Wesley. All rights reserved 4-2 Chapter 4: Networking and the Internet 4.1 Network Fundamentals.
HTML. Principle of Programming  Interface with PC 2 English Japanese Chinese Machine Code Compiler / Interpreter C++ Perl Assembler Machine Code.
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
Active Server Pages  In this chapter, you will learn:  How browsers and servers interacted on the Internet when the Internet first became popular 
Kingdom of Saudi Arabia Ministry of Higher Education Al-Imam Muhammad Ibn Saud Islamic University College of Computer and Information Sciences Chapter.
1 Welcome to CSC 301 Web Programming Charles Frank.
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Web Programming Brian Toone 8/27/2014. Outline for today 1.Understanding the architecture of the web 2.Overview of programming languages – Client-side.
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
IS-907 Java EE World Wide Web - Overview. World Wide Web - History Tim Berners-Lee, CERN, 1990 Enable researchers to share information: Remote Access.
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Introduction and Principles Web Server Scripting.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
 Web pages originally static  Page is delivered exactly as stored on server  Same information displayed for all users, from all contexts  Dynamic.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
Introduction to the World Wide Web & Internet CIS 101.
Web Design Terminology Unit 2 STEM. 1. Accessibility – a web page or site that address the users limitations or disabilities 2. Active server page (ASP)
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 22 World Wide Web and HTTP.
Internet and World Wide Web Introduction to the Internet.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
4.01 How Web Pages Work.
4.01 How Web Pages Work.
WWW and HTTP King Fahd University of Petroleum & Minerals
Chapter 27 WWW and HTTP.
4.01 How Web Pages Work.
Presentation transcript:

Introduction to Web Interface Technology (CSE2030)

Objectives Learn about the architecture of the World Wide Web Learn about addressing Learn about the difference between static and dynamic Web pages Examine different technologies that can be used to create dynamic Web pages that interact with a database

Web Basics The Web consists of computers on the Internet connected to each other in a specific way The Web has a client/server architecture Web browsers Also called browsers Programs used to connect client-side computers to the Internet

Web Basics Web servers Run special Web server software Listener Component included in Web server software Monitors for messages sent to it from client browsers

Web Basics Web page Usually a file with an .htm or .html extension that contains Hypertext Markup Language (HTML) tags and text HTML Document layout language (not a programming language) Defines structure and appearance of Web pages Allows Web pages to embed hypertext links to other Web pages

Figure 1-1: Web client/server architecture Web Basics Figure 1-1: Web client/server architecture

Communication Protocols and Web Addresses Agreements between sender and receiver regarding how data are sent and interpreted Internet is built on two network protocols: Transmission Control Protocol (TCP) Internet Protocol (IP) Interaction b/w Browser and Server is governed by the HTTP protocol (Request/Response Tx) HTTP is stateless! (Will discuss in more detail when processing forms)

Communication Protocols and Web Addresses Packets Data that can be routed independently through Internet Domain name Represents an IP address A domain names server maintains tables with domain names matched to their IP addresses Internet Service Providers (ISPs) Provide commercial Internet access

Communication Protocols and Web Addresses Hypertext Transfer Protocol Communication protocol used on the Web Web address Also called Uniform Resource Locator (URL) Figure 1-2: URL Components

Communication Protocols and Web Addresses If folder path is not specified, Web server assumes default starting point is Web server’s root document folder Figure 1-3: URL that displays default home page

Communication Protocols and Web Addresses Internet URLs Specify a Web server or domain name Specify communication protocol as first part of URL File URL HTML file stored on user’s hard drive

Running Multiple Listener Processes on the Same Web Server Running multiple listeners is managed through the concept of ports Ports Identified by a number that specifies which TCP/IP-based listener or server running on a computer, at a given IP address, is going to receive a message coming in from the network You will set up a port for the Apache server on SNG

Other Web Terms - CSS CSS – Cascading style sheet Used to define HTML formatting styles for multiple pages Needs to be “included” in each page that is to use the formatting. Example: http://www.w3schools.com/css/showit.asp?filename=ex1

Other Web Terms - XML XML was designed to describe data, and to focus on what data is. HTML was designed to display data, and to focus on how data looks. XML does not DO anything XML was not designed to DO anything. The following example is a note to Tove from Jani, stored as XML: <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> XML tags are not predefined. You must "invent" your own tags.

XML cont 1. With XML, plain text files can be used to share data. Since XML data is stored in plain text format, XML provides a software- and hardware-independent way of sharing data. With XML, your data is available to more users. Since XML is independent of hardware, software and application, you can make your data available to other than only standard HTML browsers.

XML cont 2. XML documents use a self-describing and simple syntax. <?xml version="1.0" encoding="ISO-8859-1"?> <note date="12/11/99"> <to>Tove</to> <from>Jani</from> </note> See: http://www.w3schools.com/xml/default.asp

Personal and Client/Server Databases Using a client/server database for a multiuser application

Personal and Client/Server Databases A client/server database is less affected when a client workstation fails The failed client’s in-progress queries are lost, but the failure of a single client workstation does not affect other users In case of server failure in a client/server database, a central synchronized transaction log contains a record of all current database changes

Personal and Client/Server Databases Personal databases are useful: For Web installations where the only database operation is viewing data and no action queries are used Where less robust recovery and security systems can be tolerated Eg MS Access.

Personal and Client/Server Databases Longstanding and useful guideline When a personal database is used for multiuser applications, usage should be limited to no more than 10 concurrent users if action queries are allowed If security or the ability to recover from client or server failures is important, use a client/server DBMS regardless of the number of concurrent users You will use Oracle and SQL Server.

Dynamic Web Pages Static Web page Dynamic Web page Page content established at the time page is created Useful for displaying data that doesn’t change often, and for navigating between HTML Web page files Dynamic Web page Also called an interactive Web page Page content varies according to user requests or inputs

Figure 1-7: Database-driven Web site Architecture Dynamic Web Pages Figure 1-7: Database-driven Web site Architecture

Dynamic Web Pages Figure 1-8: Database-driven Web site architecture for action query

Approaches for Creating Dynamic Web Pages In server-side processing, the Web server: Receives the dynamic Web page request Performs all of the processing necessary to create the dynamic Web page Sends the finished Web page to the client for display in the client’s browser

Approaches for Creating Dynamic Web Pages Client-side processing Some processing is done on the client workstation, either to form the request for the dynamic Web page or to create or display the dynamic Web page Eg Javascript code to validate user input. Often needs to be “executed” by the Browser.

Approaches for Creating Dynamic Web Pages Curl ASP.NET JSP, PHP Figure 1-9: Server-side and client-side Web database technologies

Client-side Processing One approach to client-side processing involves downloading compiled executable programs stored on the Web server to the user’s Web browser and then running them on the user’s workstation This program interfaces with the user and, as needed, sends and retrieves data from a database server A Java applet uses this approach

Client-side Processing Java Programming language that is a simplified subset of C++ Commonly used to create Web applications, called Java applets, that can be downloaded from a Web server to a user’s browser and then run directly within the user’s browser Java applets run identically on any operating system and with any Web browser CURL – replacement for java applets and javascript; new. See http://www.curl.com

Client-side Processing Microsoft’s ActiveX also sends a compiled executable program to the user’s workstation ActiveX program are generally used to create intranet applications An intranet is a self-contained internal corporate network based on Internet protocols but separate from the Internet Active X programs are capable of modifying data on the client machine (eg registry) – security risk

Client-side Processing Another client-side processing approach involves client-side scripts (cannot modify user machines eg delete files) Allows uncompiled code in languages such as JavaScript or VBScript or .net* (MS only) to be typed into the HTML document along with the static HTML text More complex user interfaces are possible with this approach than with straight HTML Allows user inputs to be checked for correctness on user’s workstation rather than on Web server

Server-side Processing The most common server-side dynamic Web page technology uses HTML forms Enhanced documents designed to collect user inputs and send them to the Web server HTML forms allow users to input data using text boxes, option buttons, and lists When the form is submitted, the servicing program on the Web server process the form inputs and dynamically composes a Web page reply

Server-side Processing Common Gateway Interface (CGI) protocol Used as a method for communicating between the HTML form and the servicing program Disadvantage of using CGI-based servicing programs is that each form submitted to a Web server starts its own copy of the servicing program, potentially causing memory problems for the Web server Starts another program/script to perform processing. Often written in PHP, PERL, Shell scripts, C.

Server-side Processing Web server vendors have developed proprietary technologies to process form inputs without starting a new copy of the servicing program for every form Netscape’s Netscape Service Application Programming Interface (NSAPI) Microsoft’s Internet Server Application Programming Interface (ISAPI)

Server-side Processing Another approach for creating dynamic Web pages using server-side processing uses server-side scripts Server-side script is uncompiled code included within an HTML Web page file to extend its capabilities Examples of technologies using this approach include Server-side includes (SSIs) and Microsoft Active Server Pages (ASPs) From 2002, Microsoft’s ASP.NET

Server-side Processing JSP – Java server pages – combine markup (HTML or XML) with Java code to dynamically create web pages. ColdFusion – proprietary product which uses <CF…/CF> tags to invoke functions on the server ASP.NET ‘similar’ to ASP but can use any language to write code; is OO; separates code from HTML form. We will use VB.NET (full programming language not just a script).

Remainder of course