Lecture 4 Term 2

cornawakeΛογισμικό & κατασκευή λογ/κού

4 Νοε 2013 (πριν από 3 χρόνια και 9 μήνες)

72 εμφανίσεις

Lecture 4 Term 2

Introduction to PHP

30/1/12

Server Side Scripting


This is a web server technology in which a user's
request is fulfilled by running a script directly on
the web server to generate dynamic HTML
pages.



The primary advantage to server
-
side scripting is
the ability to highly customize the response
based on the user's requirements, access rights,
or queries into data stores.

2

Ecommerce Applications


E
-
Commerce applications exist since the 1960s.



Electronic Data Interchange (EDI)



Electronic Funds Transfer (EFT)



Termed Telecommunications Applications.

3

EDI


“….A set of computerised forms that automate common
business processes such as purchase orders, invoices, shipping
notices and requests for proposal”.


4

Problems with EDI


Special software needed



Costly transaction and processing fees



Firms with several linked partners operating on different VANs
often required different software and network connections.

5

Web Based E
-
Business


Internet



Intranet



Extranet

6

Technical Challenges


Lack of systems security, reliability, standards and
some communication protocol



Development tools are still evolving and changing
rapidly



E.g. Difficult to integrate the Internet and EC
software with some existing databases and
applications

7

Static Web Applications


All information served to the clients browser is static. In other
words the content for the page A served to client 1 is exactly the
same as the content for page A served to client 2



The web server does not dynamically generate any part of the site’s
content but simply serves static HMTL pages loaded from the Web
Server’s file systems and sends them to the requesting client

8

Serving an HTM L page


9

Dynamic Web
-
Applications


Initially, Common Gateway Interface Programming was used
(CGI)



Server
-
side scripting allows us create dynamic and interactive
web sites



PHP allows us create dynamic web sites

10

Serving a PHP file

11

Here are some fun

things to do:

1.
Go shopping

2.
Play soccer

URL:
www.mypage.com/

funstuff.php

3. Receive Request, find file and
read it

4. Execute PHP
statements

5. Send back results

6. Return
Results

2. Send
Request for
PHP file

1. User enters
web address to
PHP file

7. Receive and
interpret HTML
file

WEB SERVER

Internet


Connect to Web Browser

Internet


Connect to Web Browser

Introduction to PHP


PHP is a powerful server
-
side scripting language for
creating dynamic and interactive websites



PHP is the widely
-
used, free, and efficient alternative
to competitors such as Microsoft's ASP



PHP is perfectly suited for Web development and can
be embedded directly into the HTML code


12

PHP


The PHP syntax is very similar to Perl and C



PHP is often used together with Apache (web
server) on various operating systems



It can also be used with Microsoft's IIS on
Windows.


13

What is PHP?



PHP stands for
P
HP:
H
ypertext
P
reprocessor


PHP is a server
-
side scripting language, like ASP


PHP scripts are executed on the server


PHP supports many databases (MySQL, Informix,
Oracle, Sybase, Solid, Generic ODBC, etc.)


PHP is an open source software (OSS)


PHP is free to download and use


14

What is PHP?


It is a server side scripting language designed for
the web



PHP is embedded into HTML and is executed
each time the web page is visited



PHP is interpreted by the web server and
generates HTML code or other output for the
user to see

15

More on PHP


PHP is an open source product.



You have access to the source code.



You can use it, alter it and redistribute it without
charge.



PHP originally Personal Home Page, now stands
for PHP hypertext preprocessor.


16

Advantages of PHP


Performance


Database Integration


Built
-
in libraries


Cost


Portability


Source Code

17

Development Environment


Server
-
side scripting
-

You need three things to make
this work. The PHP parser (CGI or server module), a
webserver and a web browser.



You need to run the webserver, with a connected
PHP installation.



You can access the PHP program output with a web
browser, viewing the PHP page through the server.

18

Programming PHP


A typical PHP file includes:


HTML


PHP tags


PHP statements


Whitespace


Comments


Note


When you view the source of an PHP file on the
client side you will not see the server side script, all
you may view is the HTML generated.


19

PHP Tags


<? echo “<p>Order Processed”;?>



This is the default tag used for PHP development



It follows the style of the SGML

20

Example 1

<html>


<head>


<title>Example</title>


</head>


<body>



<?
php



echo "Hi, I'm a PHP script!";


?>


</body>

</html>


21

<html>


<head>


<title>Create a variable</title>

</head>


<body>

<?
php


$a=14;

$b=19;

$result= $a + $b;


echo $result;

?>

</body>


</html>

22


PHP Statements

<?
php

echo
"<p>Order Processed </p
>";

?>



The keyword echo prints the text Order Processed to the user’s
browser.



Note: The semicolon at the end of the statement is mandatory, failure
to include the semicolon will results in generating a syntax error.

23

Whitespace


Can improve code readability.



The addition of white space does not affect the execution of
your code.



White space makes your PHP file bigger but makes the code
more readable.


24

Comments


Comments act as essential documentation for a programmer’s
code


Explains the purpose of the script


Who wrote it


Why they wrote it the way they did


The PHP interpreter will ignore the comments but it is
important comments are included for updating and
maintenance purposes

25

Creating Comments


Multilined

Comment

/* Author: Mary Brown


Last Modified: 3/9/08


*/



Single line Comments

<?echo “<p> Order
Processed </p>” ;?>//
Start printing order



26

Variables


Variables in PHP are represented by a dollar sign
followed by the name of the variable



The variable name is case
-
sensitive




A valid variable name starts with a letter or
underscore, followed by any number of letters,
numbers, or underscores

27

Declaring a Variable Using PHP

<?
php

$
var

= "Bob";

$
Var

= "Joe";

echo "$
var
, $
Var
";
// outputs "Bob,
Joe"


$4site = 'not yet';
// invalid; starts
with a number

$_4site = 'not yet';
// valid; starts
with an
underscore

?>


28

Variable Types


A variable type refers to the kind of data that is stored in it.


PHP data types include:


Integer


Double


String


Array


Object

29

Arithmetic Operators


They are usually applied to integers or doubles if you apply an
arithmetic operator to a string PHP will try and convert it to a
number



If the string contains e or E it will be converted to a double
otherwise it will be converted to int

30

Arithmetic Operators

Operator

Name

Example

+

Addition

$a + $b

-

Subtraction

$a
-

$b

*

Multiplication

$a * $b

/

Division

$a / $b

%

Modulus

$a % $b

31

String Concatenation/Operator


Used to add two strings together.


Syntax:

<?
php


$
qty1=12;


echo $qty1. "Purchased<
br
/>"; ?>



To avoid having to write multiple echo commands use the (.)

32

Example 2

<?
php

$a="
ebusiness

";

$b="is great";

$result=$
a.$b
;

echo $result;


?>


Output:
ebusiness

is great

33

Comparison Operators

Operator

Name

Use

==

equals

$a==$b

===

identical

$a===$b

!=

Not equal

$a!=$b

<>

Not equal

$a<>$b

<

Less than

$a<$b

>

Greater than

$a>$b

<=

Less than or
equal to

$a<=$b

>=

Greater than
or equal to

$a>=$b


34

Logical Operators

Operator

Name

Use

Result

!

NOT

!$b

Returns true is b is
false and vice versa

&&

AND

$a && $b

Returns true if both
$a and $b are true
otherwise false

||

OR

$a || $b

Returns true if
either $a or $b are
true otherwise false

and

AND

$a and
$b

Same as && with
lower precedence

or

OR

$a or $b

Same as ||, but with
lower precedence

35

Control Structures


Are structures within a programming language that allow us to
control the flow of execution through a program or script.



The constructs that tell the programs to make decisions are
known as conditional statements.

36

If Statements


If statements may be used to make a decision.


If the condition is true the following code block is executed.


<?
php

if ($a > $b)


echo "a is bigger than b";

?>


37

Else Statements


This allows to provide an alternative action when
the condition of the if statement is false.

<?
php

if ($a > $b)

{


echo "a is bigger than b";

}

else

{


echo "a is NOT bigger than b";

}

?>


38

elseif Statements


<?
php

if ($a > $b)

{


echo"a

is bigger than b";

}

elseif

($a == $b)

{


echo "a is equal to b";

}

else

{


echo "a is smaller than b";

}

?>


39

Switch statements


The switch statement is similar to a series of IF statements on the
same expression.



You may want to compare the same variable (or expression) with
many different values, and execute a different piece of code
depending on which value it equals to.

40

<?
php

switch ($a)

{


case 0:


echo "a equals 0";


break;


case 1:


echo "a equals 1";


break;


case 2:


echo "a equals 2";


break;


default:



echo "a is not equal to 0, 1 or 2";

}

?>

41

Iteration:While loops


It tells PHP to execute the nested statement(s)
repeatedly, while the expression evaluates to
true.


The value of the expression is checked each time
at the beginning of the loop, so even if this value
changes during the execution of the nested
statement(s), execution will not stop until the
end of the iteration.


If the while expression evaluates to false from
the very beginning, the nested statement(s)
won't even be run once.

42

While Loops

<?
php

$
i

= 1;

while ($
i

<= 10)

{


echo $
i
++;
/* the printed value would be





$
i

before the increment




(post
-
increment) */

}

?>



43

For Loops



for (expr1; expr2; expr3) statement


The first expression (
expr1
) is evaluated once
unconditionally at the beginning of the loop.


In the beginning of each iteration,
expr2

is
evaluated. If it evaluates to true, the loop
continues and the nested statement(s) are
executed. If it evaluates to false, the execution of
the loop ends.


At the end of each iteration,
expr3

is evaluated
(executed).


44

For Loops


<?
php

for ($
i

= 1; $
i

<= 10; $
i
++)

{


echo $
i
;

}

?>



45

Do…While Loops


do..while loops are very similar to while loops, except the
truth expression is checked at the end of each iteration
instead of in the beginning.



The main difference from regular while loops is that the first
iteration of a do..while loop is guaranteed to run.

46

Do..While Loops

<?php



$i = 0;



do



{





echo $i;



}



while ($i > 0);

?>

47

Wamp Server


http://www.wampserver.com/en/


Windows web development environment


It allows you to create web applications with Apache,
PHP and the MySQL database


It also comes with
PHPMyAdmin

and
SQLiteManager

to
easily manage your databases


WampServer

installs automatically and its usage is very
intuitive



You will be able to tune your server without even
touching the setting files

48