Server-Side Programming - gozips.uakron.edu
Download
Report
Transcript Server-Side Programming - gozips.uakron.edu
2440: 141
Web Site Administration
Web Server-Side Programming
Professor: Enoch E. Damson
Programming Languages
Programming languages are used to develop programs
that help:
Input data
Processes data
Store data
Output data
Web Server-Side Programming
2
Programming
Programming is accomplished in two ways:
Sequentially
Using variables and procedures/functions
Object-Oriented
Using classes and objects which have:
Attributes (variables)
Methods (functions/procedures)
Web Server-Side Programming
3
Programs
Programs are written to perform specific tasks
Programming is accomplished using major elements such as:
Syntax and Expressions
Comments
Literal Values
Data Types and Variables
Input/Output Data
Arithmetic Operations
Logical Operations
Selections/Decisions
Repetitions/Looping
Arrays
Web Server-Side Programming
4
Web Programming Languages
Web pages that contain only HTML/XHTML statements
are called static pages
Web pages that contain programming statements are
known as dynamic pages (allow the content to change)
Web Server-Side Programming
5
Web Programming Languages…
Programming languages can be used to create:
Dynamic webpages on client Web browsers
Using client-side scripting languages such as JavaScript and
VBScript
Dynamic webpages that run on Web servers and update
databases
Using server-side scripting languages such as Java Server Pages
(JSP), Active Server Pages (ASP), ASP,NET, PHP, Coldfusion, etc
Using SQL on DBMSs such as Oracle, MySQL, SQL Server, DB2, etc
Web Server-Side Programming
6
Server-Side Programming
Server-side programs provide dynamic content and
allows interaction with Web users using:
DHTML
Active Server Pages (ASP)
Servlets and Java Server Pages (JSP)
PHP: Hypertext Preprocessor (PHP)
Practical Extraction and Reporting Language (Perl)
Databases
Web Server-Side Programming
7
Dynamic Documents
Dynamic HTML (DHTML) is a term for a combination
of client-side technologies that produce dynamic
documents
DHTML can be used to create simple animations,
images, and text with resources such as:
HTML/XHTML
Style sheets (CSS)
Client-side scripting (JavaScript or VBScript)
Web Server-Side Programming
8
Web Applications
Web applications use a combination of the following
HTML/XHTML
Style sheets (CSS)
Client-side scripting languages
such as JavaScript or VBScript
Server-side scripting languages
Such as ASP, ASP.NET, PHP, JSP, etc
Database Management Systems (DBMS) to create and
manipulate databases
Usually using the embedded Structured Query Language (SQL)
especially in Relational Databases.
Web Server-Side Programming
9
HTML Form Page
<html>
<head>
<title>HTML Form Page</title>
</head>
<body>
<form action=“http://localhost/cgi-bin/perl/hello.cgi”
method=“post”>
7.
<input name=“firstname” type=“text” />
8.
<input value=“Send” type=“submit” />
9.
</form>
10. </body>
11. </html>
1.
2.
3.
4.
5.
6.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Web Server-Side Programming
Opening <html> tag
Opening <head> tag
Specifying the title of the page (HTML Form
Page) with the two-sided <title> tag
Closing </head> tag
Opening <body> tag
Opening <form> tag specifying the recipient
CGI file using the action attribute and the
method of sending data (using the HTTP’s
post) with the method attribute
Using the <input> tag’s type attribute to
specify the form component (text for textbox)
being used to accept data, and the name
attribute to uniquely identify the component
Using the <input> tag’s type attribute to
specify a submit button (submit) being used
to send data, and the value attribute for the
button’s caption
Closing </form> tag
Closing </body> tag
Closing </html> tag
10
DHTML Sample Code
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<html>
<head>
<script type = "text/javascript">
document.writeln("Hello World");
</script>
<style type=“text/css”>
p {color: blue}
</style>
<title>DHTML Page</title>
</head>
<body>
<p> Embedded style </p>
<p style="color: red"> Inline style </p>
</body>
</html>
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Web Server-Side Programming
Opening <html> tag
Opening <head> tag
Opening <script> tag specifying the script
language of choice (JavaScript)
Displays text (“Hello World”) on a browser
Closing </script> tag
Opening <style> tag specifying the style sheet
type (css – cascading style sheet)
Specifying a value of blue as the text color for
all paragraphs on the page – Embedded style
Closing </script> tag
Specifying the title of the page (DHTML Page)
with the two-sided <title> tag
Closing </head> tag
Opening <body> tag
Displays a paragraph on the page
Displays a paragraph with an Inline style
Closing </body> tag
Closing </html> tag
11
Active Server Pages (ASP)
Microsoft’s server-side technology for creating
dynamic Web pages
Based on Microsoft’s Component Object Model
(COM) and ActiveX Controls
COM is a Microsoft standard that defines how software
components from different vendors can work together
ActiveX controls are components built using the COM
specifications
VBScript and JavaScript are the most popular ASP
languages but any language (such as C++, Perl, Java)
that supports COM can also be used
Web Server-Side Programming
12
ASP Page
1.
2.
3.
4.
<%@ language=“Javascript”>
<html>
<%= “Hello World” %>
</html>
1.
2.
3.
4.
Web Server-Side Programming
Specifies the ASP script language using
the @ directive
Opening <html> tag
Displays text on a page using the =
directive
Closing </html> tag
13
Servlets and Java Server Pages (JSP)
Sun Microsystem’s alternative to Microsoft’s ASP
Rely on Sun’s Java programming language
Java – a portable object-oriented language
Servlets – are server-side programs like CGI programs but
run as part of the Web server instead of executing as
separate processes (as CGI scripts do)
JSP – provides the same benefits of servlets along with the
benefits of SSI
JavaBeans – a component model written in Java to allow
developers write reusable components
JSP’s solution to separate content from presentation
Web Server-Side Programming
14
JSP Page
1.
2.
3.
<html>
<%= “Hello World” %>
</html>
1.
2.
3.
Web Server-Side Programming
Opening <html> tag
Displays text on a page using the =
directive
Closing </html> tag
15
Perl CGI Script
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
#!/cgi-bin/perl
#hello.cgi – Sample perl script
print “Content-type: text/html\n\n”;
use CGI qw(:standard);
use strict;
my ($fname);
$fname = param(‘firstname’);
print “<HTML\n”;
print “<head><title>Perl CGI
Script</title></head>\n”;
print “<body>Hello $fname</body>\n”;
print “</html>\n”;
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Web Server-Side Programming
Location of the Perl interpreter (required in
UNIX; optional in Windows)
Comment (non-executable statement)
Sends an HTML document type (text/html) to
the browser using the HTTP header line
(Content-type) and creates a new line
Allows the script to parse data from the form
when received
Prevents Perl from using undeclared variables
Declares a scalar variable (preceded by a $
sign) named fname
Assigns a form data to a variable
Sends the opening <html> tag to the browser
Sends the two-sided <head> and <title> tags
to the browser
Sends the two-sided <body> and contents of
the page to the browser
Sends the closing </html> tag to the browser
16
PHP: Hypertext Preprocessor (PHP)
A simple open-source server-side programming language
used for developing interactive Web documents
Includes object-oriented programming (OOP) capabilities
Web Server-Side Programming
17
PHP Page
1.
2.
3.
<html>
<?php echo “Hello World” ?>
</html>
1.
2.
3.
Web Server-Side Programming
Opening <html> tag
Displays text on a browser
Closing </html> tag
18
Databases
Databases are a collection of data and metadata
(data about other data) about entities using a
database management system (DBMS)
DBMS – software used to create, construct and manipulate
databases
E.g. Oracle, Microsoft SQL Server, MySQL, etc
Entities – any thing, place, event, etc that data is collected
about
Data is collected in the form of attributes to help make up records
Attributes – description of an entity
Records – collection of attributes
Web Server-Side Programming
19
DBMS
Most DBMSs use a data definition language (DDL) and
data manipulation language (DML) to help create and
manipulate databases
The most widely used DDL/DML for databases is the
structured query language (SQL) – pronounced “sequel”
Used by virtually all DBMSs
Web Server-Side Programming
20
SQL
SQL is a language embedded in virtually all DBMSs to
perform several tasks including:
Creating the structure of database objects
Using the create command
Removing database objects
Using the drop command
Changing the structure of database objects
Using the alter command
Web Server-Side Programming
21
SQL…
Other SQL functionalities include:
Adding records into database tables
Using the insert command
Removing records from database tables
Using the delete command
Changing records in database tables
Using the update command
Retrieve records from database tables
Using the select command
Web Server-Side Programming
22
Web Servers and Server-Side
Programming Language
Choosing a programming language for server-side
programming depends on the type of Web server to use
and vice versa
The two most popular Web servers allows you to choose
their most friendliest programming language
IIS is most friendly with ASP, ASP.NET
Apache is most friendly with PHP, JSP, etc
Web Server-Side Programming
23