Professional Documents
Culture Documents
XAMPP Tutorial
XAMPP Tutorial
1
Introducing XAMPP
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”
8
Starting Apache & MySQL
Toggle button
9
Type http://localhost/ or http://127.0.0.1/
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”
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
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!
?>
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
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 “.” :
30
Naming Variables
• The name you assign to a variable is called an
identifier
32
PHP Strings
• String values
– Strings may be in single or double quotes
<?
$output1 = "Hello PHP!";
$output2 = 'Hello again!';
?>
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!
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.
…
<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>
40
$_GET
• $_GET is also associative array
– If we open the URL:
http://phpcourse.com/test2.php?page=1&user=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
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.
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
$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 { }
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";
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";
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