You are on page 1of 58

XAMPP Installation

1
Introducing XAMPP

• An integration package containing a number of useful


packages that make it easy to host web sites on various
platforms.
Apache – MySQL - PHP
– WAMP or LAMP
• Allow the ease of installation and set up
• Main Page:
http://www.apachefriends.org/en/xampp.html

2
Introducing XAMPP (cont.)
Basic packages include system, programming & server
software:
• Apache: the famous Web server
• MySQL: the widely-used, free, open source database
• PHP: the programming language
• Perl: the programming language
• ProFTPD: an FTP server
• OpenSSL: for secure sockets layer support
• PhpMyAdmin: for MySQL admin.

3
XAMPP Installation
• Download XAMPP installer and let the install begin:
– Using the installer version is the easiest way to install XAMPP.
– Use default directory for convenience

4
There can be some problems
Port 80 (Apache’s default port) can be occupied by
other programs 

http://www.apachefriends.org/en/faq-xampp-windows.html
5
XAMPP Directories
• XAMPP default installation directory is c:/xampp/
• The directory of interest is “c:/xampp/htdocs/”
and it’s called the webroot (or document root)
– PHP files are put in the webroot (c:/xampp/htdocs/)
– c:/xampp/htdocs/ maps to http://localhost/
• For example, c:/xampp/htdocs/project/script.php maps to
 http://localhost/project/script.php
– If no file is specified, Apache looks for index.php
• For example, c:/xampp/htdocs/project/ maps to 
http://localhost/project/index.php

6
Installation complete!

7
XAMPP Control Panel

No need to tick
for running as
“service”

Apache  HTTP Server


MySQL  DBMS
FileZilla  FTP Client
Mercury  SMTP Client

8
Starting Apache & MySQL

Toggle button

9
Type http://localhost/ or http://127.0.0.1/

If the server is up and running,


you will get this splash screen.
Click on English.
10
Once English is
clicked on, the
Welcome webpage is
shown for XAMPP.
11
http://localhost/xampp/index.php

You’re not accessing the WWW


but rather a webpage locally hosted
on your computer, which is now
running as a web server (localhost).

12
Click on Status to
determine if everything
is working correctly.

13
What you chose to install
should be lighted green
on this chart
14
Check the “working environment”

Click on phpinfo() to check


the working environment. 15
From, Tools 
phpMyAdmin, we can
manage MySQL
16
PHP Fundamentals
• PHP “Hello World” Example
• PHP Variables
• Variable Types
• Working with User Input
• Variable Operators
• Conditional Statements

17
What is PHP?
• PHP: Hypertext Preprocessor
– Server-side scripting language
– Creation of dynamic content
– Interaction with databases
– Can be embedded in HTML
– Open source, written in C
– First introduced in 1995; at that time PHP stood
for Personal Home Page.
– Similar to Perl and C

18
Exercise #1: Hello PHP
• The PHP code is usually in files with
extension ".php“
<?php denotes start ?> denotes end of
of PHP code PHP code
• The PHP code can be nested within HTML
code.
<html> PHP statements
must be ended with
<head><title>Hello world page</title></head>
<body> a semicolon.
<?php
Hello echo
HTML!"Hello PHP!"; ?>
</body>
</html>
19
Client-side vs. Server-side Script

PHP code is never sent to a


client’s Web browser; only the
HTML output of the processing
<html> is sent to the browser.
<head><title>Hello world
page</title></head>
<body>
Hello HTML!<br>
<?php echo "Hello PHP!"; ?>
</body>
20
</html>
Client-side vs. Server-side Script
• HTML code is processed by browsers as web pages are loading.
(client-side)
• PHP code is preprocessed by PHP Web servers that parse
requested web pages as they are being passed out to the browser.
(Server-side)
• You can embed sections of PHP inside HTML:
<BODY>
<p>
<?php $test = "Hello World!";
echo $test; ?>
</p>
</BODY>

• Or, you can call HTML from PHP :


<?php
echo "<html><head><title>Hello</title>

?>
21
PHP Comments
• You can add comments to the code
– Starting with "//", "#" or block in "/*" and "*/"
– Only "/*" – "*/" can be used over several lines
– Comments are NOT executed

22
PHP Fundamentals
• PHP “Hello World” Example
• PHP Variables
• Variable Types
• Working with User Input
• Variable Operators
• Conditional Statements

23
PHP Variables
• What are variables?
• The values stored in computer memory are called
variables.
• The values, or data, contained in variables are
classified into categories known as data types.
• The name you assign to a variable is called an
identifier.

24
PHP Variables
• Prefixed with a $ (Perl style)
• Assign values with = operator
• Example: $name = “John Doe”;
• No need to define type
• Variable names are case sensitive
• $name and $Name are different

25
PHP Variables
<?php // declare string variable $output
$output = "<b>Hello PHP!</b>";
Echo $output;  Hello PHP!
?>

• Each variable is declared when it's first assigned


value.

• The type of the value determines the type of


the variable.

26
PHP Fundamentals
• PHP “Hello World” Example
• PHP Variables
• Variable Types
• Working with User Input
• Variable Operators
• Conditional Statements

27
Variable/Data Types
• A data type is the specific category of
information that a variable contains

• Possible PHP Variable Types are:


– Numeric (real or integer)

– Boolean (TRUE or FALSE)

– String (set of characters)

28
Variable/Data Types
• Unlike C, PHP is not strictly typed.
• PHP decides what type a variable is based on
its value.
• PHP can use variables in an appropriate way
automatically
• For Example:
• $HST = 0.12; // HST Rate is numeric
• echo $HST * 100 . “%”; //outputs “12%”
• $HST is automatically converted to a string for
the purpose of echo statement
29
Displaying Variables
• To display a variable with the echo statement,
pass the variable name to the echo statement
without enclosing it in quotation marks :
– $VotingAge = 18;
– echo $VotingAge;
• To display both text strings and variables, you
may used concatenation operator “.” :

• echo "<p>The legal voting age is “.


$VotingAge. ".</p>";
Concat. operator Period

30
Naming Variables
• The name you assign to a variable is called an
identifier

• The following rules and conventions must be


followed when naming a variable:
• Identifiers must begin with a dollar sign ($)
• Identifiers may contain uppercase and lowercase
letters, numbers, or underscores (_).
• The first character after the dollar sign must be a letter.
• Identifiers cannot contain spaces or special characters.
• Identifiers are case sensitive
31
Declaring and Initializing
Variables
• Specifying and creating a variable name
is called declaring the variable
• Assigning a first value to a variable is
called initializing the variable
• In PHP, you must declare and initialize a
variable in the same statement:
– $variable_name = value;

32
PHP Strings
• String values
– Strings may be in single or double quotes
<?
$output1 = "Hello PHP!";
$output2 = 'Hello again!';
?>

– Start and end quote type should match


– Difference between two types of quotes is the
escape sequences

33
Strings escaping
• Special chars in strings are escaped with
backslashes (C style)

• Double-quoted string
$str1 = "this is \"PHP\""; echo $str1;
 outputs this is “PHP”

• Single-quoted string
$str2 = ' "I\'ll be back ", he said. '; echo $str2;
 outputs "I'll be back", he said.

34
Variables in strings
• Double quoted strings offer something more:
$saying = "I'll be back!";
$str1 = “He told me: $saying";
outputs  He told me: I'll be back!

• Variables are evaluated in double-quoted strings, but not in


single-quoted strings.
$saying = "I'll be back!";
$str2 = ‘He told me: $saying’;
outputs  He told me: $saying

• For single-quoted strings, use concatenation:


$saying = "I'll be back!";
$str3 = ‘He told me: ’ . $saying;
outputs  He told me: I'll be back! 35
PHP Fundamentals
• PHP “Hello World” Example
• PHP Variables
• Variable Types
• Working with User Input
• Variable Operators
• Conditional Statements

36
Working with user input
• The user sends data to the server only
one way – with HTML Forms
– They are sets of fields that determine the
types of data to be sent.
– The server receives the filled-in data and
sends the HTML response back to the user/
– The forms data is similar to user inputs to a
normal application

37
How Does It Work
The user enters data and submits the form.
The form has "action" URL to send the data to.

The PHP script receives


<? the data as
echo "Welcome ".$_POST ['username'] ."!";
$_GET and $_POST
?>
arrays and runs.


<body> Producing HTML according
Welcome Mike! to user's posted data.

38
$_POST and $_GET
• PHP receives the data in the $_GET and
$_POST arrays
– URL parameters (data from HTML forms with
method=“GET“) go into the $_GET array.
– Data from HTML forms with method="post"
go into the $_POST array.
– Both arrays are global and can be used
anywhere in the requested page.

39
$_POST
• $_POST is an associative array (key and value pairs)
– The “name” attribute of form input becomes
key in the array
<form method="post" action="test.php">
<input type="text" name=“firstname" />
<input type="password" name="pass" />
</form>

– If in the above form the user fills "John" and "mypass“

– test.php will start with built-in array $_POST":


• $_POST[“firstname"] will be "John"
• $_POST['pass'] will be "mypass"

40
$_GET
• $_GET is also associative array
– If we open the URL:
http://phpcourse.com/test2.php?page=1&user=john

– The test2.php script will start with built-in


array $_GET
• $_GET['page'] will be 1
• $_GET['user'] will be "john"

41
$_POST Versus $_GET
• $_GET passes the parameters trough the URL
– Allows user to send link or bookmark the page as it is.
– Parameters are visible in the URL; security concerns.
– URL is limited to 255 symbols.
• $_POST passes the parameters trough the request body
– More secure; parameters are not visible in the URL.
– Prevent bookmarking; user cannot open the page
without first filling the post data in the form.
– Unlimited size of data.
42
Exercise #2
Ex1.html

Thank_You.php

Thank you Test Example! We received your information.


43
PHP Fundamentals
• PHP “Hello World” Example
• PHP Variables
• Variable Types
• Working with User Input
• Variable Operators
• Conditional Statements

44
Variable Operators
• Standard Arithmetic operators
• +, -, *, / and % (modulus  the remainder of division of
one number by another, e.g, 5 % 2 = 1 and 9 % 3 = 0 )
• String concatenation with a period (.)
• $car = “Hello” . “ World!”;
• echo $car; output “Hello World!”
• comparison operators
• Equal  == (double equal sign is a comparison operator)
– Using only one equal sign will initialize/overwrite the value of
variables (the assignment operator).
• Not Equal  !=
• Less than  <
• greater than  >
• Less than or equal  <=
45
• greater than or equal  >=
Combined Operators
• $a = 3;//Assignment
– Initializes/overwrites $a to 3
• $a += 5; // Combined Assignment
– sets $a to 8  $a = $a +5
• $a ++; // Increment Operator
– sets $a to 9  $a = $a +1  $a += 1
• $a --; // Decrement Operator
– sets $a back to 8  $a = $a - 1  $a -= 1
• $a == 5; // Comparison operator
– compares the value of $a to 5, produces false.
• Combined operator for strings
– $b = "Hello ";
– $b .= "There!"; // sets $b to "Hello There!"; 46
Strict Comparison
• ===, !== operators for strict comparison
– different from ==, !=
– $a="10";$b=10;$a==$b will produce true.
– $a="10";$b=10;$a===$b will produce false.

• Strict comparison: $a === $b :


– TRUE if $a is equal to $b, and they are of the
same type.

47
PHP Fundamentals
• PHP “Hello World” Example
• PHP Variables
• Variable Types
• Working with User Input
• Variable Operators
• Conditional Statements

48
Conditional Statements
• Decision making or flow control is the
process of determining the order in which
statements execute in a program

• The special types of PHP statements


used for making decisions are called
decision-making statements or
conditional statements.
49
Conditional Statements
• Decision making involves evaluating
Boolean expressions (true / false)

• Initialize $cat_is_hungry = false;


If($cat_is_hungry == true) { /* feed cat */ }
If($cat_is_hungry) { /* feed cat */ }

• AND and OR for combinations


if($cat_is_hungry AND $havefood) {/* feed cat*/}50
Conditional Statements - if
• if statement allows code to be executed only if
certain condition isexpression
Boolean
Don't metthe brackets!
forget

$a = 5; $b = 7;
if ($a > $b)
echo "A is greater than B";
if ($a % 2) { If ($a % 2) is true (i.e., = 1),
echo "A is odd"; this entire code block will be
$b = $a % 2; executed. Code blocks must
echo "A%2 is :".$b; start and end with opening
} and closing braches { }

– Can we write this code block as one statement?


if ($b = $a%2)
echo "A is odd - A%2 is :".$b;
51
If - else
• if-else statement allows you to execute
one code if condition is met or another if not.
• An else clause executes when the condition
in an if...else statement evaluates to FALSE
$a = 5; $b = 7;
if ($a > $b)
echo "A is greater than B";
else
echo "B is greater or equal to A";

52
if - elseif
• if – elseif is an extension to the if-
else statement
– Allows you to add conditions for the else body
if ($a > $b)
echo "A is greater than B";
elseif ($a == $b)
echo "A is equal to B";
else
echo "B is greater than A";

– You can have multiple elseif statements

53
Nested if
• When one decision-making statement is
contained within another decision-making
statement, they are referred to as nested
decision-making structures
if ($SalesTotal >= 50
&& $SalesTotal <= 100)
if ($SalesTotal >= 50)
if ($SalesTotal <= 100)
echo " <p>The sales total is between
50 and 100, inclusive.</p> ";
54
if ($mark>= 80)
echo "A";
A  80-100% What will happen when
if ($mark >= 65)
B  65- 79% $mark=85
C  50- 64% echo “B"; $mark=75
F  0- 49% if ($mark >= 50)
echo “C";
else
echo “F";

if ($mark >= 80 && $mark < 100) if ($mark >= 80)


echo "A"; echo "A";
if ($mark >= 65 && $mark < 80) elseif ($mark >= 65)
echo “B"; echo “B";
if ($mark >= 50 && $mark < 65) elseif ($mark >= 50)
echo “C"; echo “C";
else else
echo “F"; echo “F";
55
Exercise #3
Ex1_c.html

Thank_You.php

56
Important Links– CISC:492
Learning without feedback is like learning archery
in a darkened room. (Cross, 1996)

Feedback Form
http://goo.gl/nWchh

Slides are adapted from:


http://schoolacademy.googlecode.com/svn/trunk/
http://rizki.staff.ub.ac.id/category/web- 57
programming/
58

You might also like