SlideShare a Scribd company logo
PHP/MySQL TutorialIntroduction to Database
By:
Prof. Jogeswar Tripathy
NIIS,Bhubaneswar
March 3, 2019
1
What is PHP?
 PHP == „PHP Hypertext Pre-processor‟
 Open-source, server-side scripting language
 Used to generate dynamic web-pages
 PHP scripts reside between reserved PHP tags
 This allows the programmer to embed PHP scripts
within HTML pages
March 3, 20192
What is PHP (cont‟d)
 Interpreted language, scripts are parsed at run-time
rather than compiled beforehand
 Executed on the server-side
 Source-code not visible by client
 „View Source‟ in browsers does not display the PHP
code
 Various built-in functions allow for fast development
 Compatible with many popular databases
March 3, 20193
3 Tier architecture
PHP script
Remote
services
Web Server
(Apache, IIS)
Browser
(IE, FireFox,
Opera)
Desktop
(PC or MAC)
Database
Database
Server
SQL
Client
application
HTTP
HTML
Web Service
tables
DHTML
SMS
vision
touch
voice
SMS system
March 3, 20194
PHP advantages
 Any changes to header or footer only require editing of a
single file.
 This reduces the amount of work necessary for site
maintenance and redesign.
 Helps separate the content and design for easier
maintenance
Page 1
Content
Page 5
Content
Page 3
Content
Page 2
Content
Page 4
Content
Header
Footer
March 3, 20195
What does PHP code look like?
 Structurally similar to C/C++
 Supports procedural and object-oriented paradigm
(to some degree)
 All PHP statements end with a semi-colon
 Each PHP script must be enclosed in the reserved
PHP tag
<?php
…
?>
March 3, 20196
Comments in PHP
 Standard C, C++, and shell comment symbols
// C++ and Java-style comment
# Shell-style comments
/* C-style comments
These can span multiple lines */
March 3, 20197
Variables in PHP
 PHP variables must begin with a “$” sign
 Case-sensitive ($Foo $foo $fOo)
 Global and locally-scoped variables
 Global variables can be used anywhere
 Local variables restricted to a function
or class
 Certain variable names reserved by PHP
 Form variables ($_POST, $_GET)
 Server variables ($_SERVER)
 Etc.
March 3, 20198
Variable usage
<?php
$foo = 25; // Numerical variable
$bar = “Hello”; // String variable
$foo = ($foo * 7); // Multiplies foo by 7
$bar = ($bar * 7); // Invalid expression
?>
March 3, 20199
Echo
 The PHP command „echo‟ is used to
output the parameters passed to it
 The typical usage for this is to send data to
the client‟s web-browser
 Syntax
 echo string arg1 [, string argn...]
March 3, 201910
Echo example
 Notice how echo „5x5=$foo‟ outputs $foo rather
than replacing it with 25
 Strings in single quotes („ ‟) are not interpreted
or evaluated by PHP
 This is true for both variables and character escape-
sequences (such as “n” or “”)
<?php
$foo = 25; // Numerical variable
$bar = “Hello”; // String variable
echo $bar; // Outputs Hello
echo $foo,$bar; // Outputs 25Hello
echo “5x5=”,$foo; // Outputs 5x5=25
echo “5x5=$foo”; // Outputs 5x5=25
echo „5x5=$foo‟; // Outputs 5x5=$foo
?>
March 3, 201911
Arithmetic Operations
 $a - $b // subtraction
 $a * $b // multiplication
 $a / $b // division
 $a += 5 // $a = $a+5
<?php
$a=15;
$b=30;
$total=$a+$b;
Print $total;
Print “<p><h1>$total</h1>”;
// total is 45
?>
March 3, 201912
Concatenation
 Use a period to join strings into one.
<?php
$string1=“Hello”;
$string2=“PHP”;
$string3=$string1 . “ ” . $string2;
Print $string3;
?>
Hello PHP
March 3, 201913
Output
Escaping the Character
 If the string has a set of double quotation
marks that must remain visible, use the 
[backslash] before the quotation marks to
ignore and display them.
<?php
$heading=“”Computer Science””;
Print $heading;
?>
“Computer Science”
March 3, 201914
Output
PHP Control Structures
if (expr) statement
<?php
if ($a > $b) {
echo "a is bigger than b";
$b = $a;
}
?>
<?php
if ($a > $b) {
echo "a is greater than b";
} else {
echo "a is NOT greater than b";
}
?>
March 3, 201915
if ($foo == 0) {
echo „The variable foo is equal to 0‟;
}
else if (($foo > 0) && ($foo <= 5)) {
echo „The variable foo is between 1 and 5‟;
}
else {
echo „The variable foo is equal to „.$foo;
}
March 3, 201916
PHP Control Structures
<?php
switch ($i) {
case "apple":
echo "i is apple";
break;
case "bar":
echo "i is bar";
break;
case "cake":
echo "i is cake";
break;
default:
echo „Enter correct option‟;
}
?>
March 3, 201917
PHP Control Structures
Loops
 while (condition) {statements;}
<?php
$count=0;
While($count<3)
{
Print “hello PHP. ”;
$count += 1;
// $count = $count + 1;
// or
// $count++;
?>
hello PHP. hello PHP. hello PHP.
March 3, 201918
Output
Loops
 for (expr1; expr2; expr3)
statement
 <?php
$i = 0;
do {
echo $i;
} while ($i > 0);
?>
March 3, 201919
Loops
 <?php
$arr = array(1, 2, 3, 4);
foreach ($arr as $value) {
echo “$value n”;
}
foreach ($arr as &$value) {
$value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)
unset($value);//break the
reference
?>
March 3, 201920
Loops
 foreach ($arr as $key => $value) {
echo "Key:$key; Value:$value<br />n";
}
 break ends execution of the current for, foreach,
while, do-while or switch structure.
 continue is used within looping structures to skip the
rest of the current loop iteration and continue
execution at the condition evaluation and then the
beginning of the next iteration.
March 3, 201921
Arrays
 An array in PHP is actually an ordered
map which maps values to keys.
 An array can be thought of in many
ways:
 Linearly indexed array , list (vector), hash
table (which is an implementation of a
map), dictionary, collection, stack (LIFO),
queue (FIFO)
March 3, 201922
Arrays
 Kinds of arrays:
 numeric arrays.
 associative arrays.
 multi dimensional arrays.
March 3, 201923
Arrays
 In numeric arrays each key value corresponds to
numeric values.
 They can be divided into two categories
1.automatic numeric array index.
2.manual array numeric index.
automatic numeric array index
<?php
$x=array(1,2,3);
print_r($x);
?>
array(0=>1,1=>2,2=>3)
March 3, 201924
Output :
Arrays
 Manual array numeric index
<?php
$x[2]=10;
$x[3]=50;//$x=array(2=>10,3=>50);
echo $x[2]; echo $x[3];
?>
 Associative arrays
In associated arrays each ID associated with its value
<?php
$x=array(“ab”=>1,”cd”=>2,”xy”=>3);
print_r($x);
?>
March 3, 201925
Arrays
 Multidimensional Arrays-An array contains one or more
arrays
<?php
$z=array(array(10,20,30),array(40,50,60));
print_r($z);
?>
Array ( [0] => Array ( [0] => 10 [1] => 20 [2] => 30 )
[1] => Array ( [0] => 40 [1] => 50 [2] => 60 ) )
March 3, 201926
Arrays
<?php
$x=array(“ab”=>1,array(2,3,4),”cd
”=>8);
print_r($x);
?>
Array ( [“ab”] => 1 [0] => Array ( [0] => 2
[1] => 3 [2] => 4 ) [”cd”] => 8 )
March 3, 201927
Arrays
<?php
$x=array(3=>4,array(2,3,4),5);
print_r($x);
?>
Array ( [3] => 4 [4] => Array ( [0] => 2
[1] => 3 [2] => 4 ) [5] => 5 )
March 3, 201928
Arrays
Array operations
 sort
 ksort
 rsort
 krsort
 array_merge
 array_combine
 array_intersect
March 3, 201929
Date Display
$datedisplay=date(“yyyy/m/d”);
print $datedisplay;
$datedisplay=date(“l, F J, Y”);
print $datedisplay;
Sunday, March 3, 2019
2019/3/3
March 3, 201930
Output :
Output :
Month, Day & Date Format Symbols
M Jan
F January
m 01
n 1
Day of Month d 01
Day of Month J 1
Day of Week l Monday
Day of Week D Mon
March 3, 2019 31
Functions
 Functions MUST be defined before then can be
called
 Function headers are of the format
 Unlike variables, function names are not case
sensitive
function functionName($arg_1, $arg_2, …, $arg_n)
March 3, 201932
Functions example
<?php
// This is a function
function foo($arg_1, $arg_2)
{
$arg_2 = $arg_1 * $arg_2;
return $arg_2;
}
$result_1 = foo(12, 3); // Store
the function
echo $result_1; // Outputs 36
echo foo(12, 3); // Outputs 36
?>
March 3, 201933
Include Files
 include “header.php”;
 include (“footer.php”);
 This inserts files; the code in files will be
inserted into current code.
 require is identical to include except
upon failure it will also produce a fatal
E_COMPILE_ERROR level error. In other
words, it will halt the script whereas
include only emits a warning (E_WARNING)
which allows the script to continue.
March 3, 201934
Include Files
 The include_once statement includes and
evaluates the specified file during the
execution of the script.
 This is a behavior similar to the include
statement, with the only difference being
that if the code from a file has already been
included, it will not be included again.
 The require_once statement is identical to
require except PHP will check if the file has
already been included, and if so, not include
(require) it again
March 3, 201935
PHP - Forms
<?php
if ($_POST["submit"])
echo "<h2>You clicked Submit!</h2>";
else if ($_POST["cancel"])
echo "<h2>You clicked Cancel!</h2>";
?>
<form action="form.php" method="post">
<input type="submit" name="submit"
value="Submit">
<input type="submit" name="cancel"
value="Cancel">
</form>
March 3, 201936
PHP - Forms
<?php
…
$term=$_REQUEST[“sterm”];
…
?>
<form action="form.php" method="post">
<input type=“text" name=“sterm"
value=“<?= $term ?>">
</form>
March 3, 201937
MySQL Connectivity
 mysql_connect()
 The mysql_connect()function opens a non-
persistent MySQL connection.
 This function returns the connection on success, or
FALSE and an error on failure. You can hide the
error output by adding an '@' in front of the
function name.
 Syntax
 mysql_connect(server,user,pwd,newlink,cl
ientflag)
March 3, 201938
MySQL Connectivity
Parameter Description
server Specifies the server to connect to
user Specifies the username to log in with.
pwd Specifies the password to log in with.
newlink If a second call is made to mysql_connect() with the
same arguments, no new connection will be
established; instead, the identifier of the already
opened connection will be returned
clientflag •MYSQL_CLIENT_SSL - Use SSL encryption
•MYSQL_CLIENT_COMPRESS - Use compression protocol
•MYSQL_CLIENT_IGNORE_SPACE - Allow space after
function names
•MYSQL_CLIENT_INTERACTIVE - Allow interactive timeout
seconds of inactivity before closing the connection
March 3, 201939
MySQL Connectivity
 Example:
<?php
$con =
mysql_connect("localhost","mysql_user","mysql
_pwd");
if (!$con){
die('Could not connect: „.mysql_error());
}
echo 'Connected successfully';
mysql_close($con);
?>
March 3, 201940
MySQL Connectivity
 mysql_close()
 The mysql_close() function closes a non-
persistent MySQL connection.
 This function returns TRUE on success, or
FALSE on failure.
 Syntax:
 mysql_close(connection)
Parameter Description
connection Specifies the MySQL connection to
close. If not specified, the last
connection opened by
mysql_connect() is used.
March 3, 201941
MySQL Connectivity
 mysql_select_db()
 The mysql_select_db() function sets the active MySQL
database.
 This function returns TRUE on success, or FALSE on
failure.
 Syntax:
 mysql_select_db(database,connection)
Parameter Description
database Required. Specifies the database to select.
connection Optional. Specifies the MySQL connection. If
not specified, the last connection opened by
mysql_connect() or mysql_pconnect() is used.
March 3, 201942
MySQL Connectivity
<?php
$con = mysql_connect("localhost", “root",
“admin");
if (!$con){
die('Could not connect: '. mysql_error());
}
$db_selected = mysql_select_db("test_db",
$con);
if (!$db_selected){
die ("Can't use test_db : “.
mysql_error());
}
mysql_close($con);
?>
March 3, 201943
MySQL Connectivity
 mysql_query()
 The mysql_query() function executes a query on a
MySQL database.
 This function returns the query handle for SELECT
queries, TRUE/FALSE for other queries, or FALSE on
failure.
 Syntax
 mysql_query(query,connection)
Parameter Description
query Required. Specifies the SQL query to send
(should not end with a semicolon)
connection Optional. Specifies the MySQL connection. If
not specified, the last connection opened by
mysql_connect() or mysql_pconnect() is used.
March 3, 201944
MySQL Connectivity
<?php
$con =
mysql_connect("localhost",”root",”admin");
if (!$con){
die('Could not connect: ' . mysql_error());
}
$sql = "CREATE DATABASE my_db";
if (mysql_query($sql,$con)){
echo "Database my_db created";
}
else{
echo "Error creating database:" .
mysql_error();
}
?>
March 3, 201945
MySQL Connectivity
<?php
$con = mysql_connect("localhost", “root",
“admin");
if (!$con){
die('Could not connect: '. mysql_error());
}
$db_selected = mysql_select_db("test_db", $con);
if (!$db_selected){
die ("Can't use test_db : “. mysql_error());
}
$sql="SELECT * FROM Person where name=„$uname‟";
mysql_query($sql,$con);
mysql_close($con);
?>
March 3, 201946
MySQL Connectivity
 mysql_fetch_array()
 The mysql_fetch_array() function returns a
row from a recordset as an associative array
and/or a numeric array.
 This function gets a row from the
mysql_query() function and returns an array
on success, or FALSE on failure or when
there are no more rows.
 Syntax
 mysql_fetch_array(data,array_type)
March 3, 201947
MySQL Connectivity
Parameter Description
data Required. Specifies which data pointer to use. The
data pointer is the result from the mysql_query()
function
array_type Optional. Specifies what kind of array to
return.Possible values:
•MYSQL_ASSOC - Associative array
•MYSQL_NUM - Numeric array
•MYSQL_BOTH - Default. Both associative and
numeric array
March 3, 201948
MySQL Connectivity
 mysql_fetch_row()
 The mysql_fetch_row() function returns a row from
a recordset as a numeric array.
 This function gets a row from the mysql_query()
function and returns an array on success, or FALSE on
failure or when there are no more rows.
 Syntax
 mysql_fetch_row(data)
Parameter Description
data Required. Specifies which data pointer to use.
The data pointer is the result from the
mysql_query() function
March 3, 201949
MySQL Connectivity
<?php
echo "<table>";
while ($row = mysql_fetch_row($result)) {
echo "<tr><td>".$row[0]
."</td><td>".$row[1].
"</td><td>".$row[2]."</td><td>".
$row[3]."</td></tr>";
}
echo "</table>";
?>
March 3, 201950
MySQL Connectivity
<?php
echo "<table>";
while ($row = mysql_fetch_array($result))
{
echo "<tr><td>{$row[„ID‟]}
</td><td>{$row[1]}
</td><td>{$row[2]}</td><td>
${row[„mailid‟]}</td></tr>";
}
echo "</table>";
?>
March 3, 201951
Cookies
 The setcookie() function is used to
create cookies. Should be called
before <html> tag.
 setcookie(name, [value], [expire],
[path], [domain], [secure]);
 <?php setcookie("uname", $name,
time()+36000); ?>
 This sets a cookie named "uname" -
that expires after ten hours.
 Either a blank value or a time in
the past makes the cookie expired.
March 3, 201952
Cookies
 To access a cookie, refer to the cookie name
as a variable or use $_COOKIE array. The
isset() checks whether the cookie is set or
not
<html> <body>
<?php
if (isset($uname))// isset($_Cookie[$uname])
echo "Welcome " . $_Cookie[$uname].
"!<br />";
else
echo "You are not logged in!<br />"; ?>
?>
</body> </html>
March 3, 201953
Cookies
Benefit of Cookies :
 Cookies are used for authenticating,
tracking, and maintaining specific
information about users
 Personalised home pages
 Electronic shopping carts.
March 3, 201954
Why use sessions
 A normal HTML website will not pass data
from one page to another
 All information is forgotten when a new
page is loaded
 Many websites need to pass user data from
one page to another
 for tasks like a shopping cart, which requires
data(the user's selected product) to be
remembered from one page to the next
 Using PHP sessions is one solution.
March 3, 201955
 Need for data to stored on the server
 Unique session information for each user
 Transient data, only relevant for short
time
 Data does not contain secret information
 Similar to Cookies, but it is stored on
the server
 More secure, once established, no data
is sent back and forth between the
machines
 Works even if cookies are disabled
 Example: we want to count the number of
“hits” on our web page.
March 3, 201956
When should you use sessions?
Sessions
 The session_start() function is used
to create a session. Should be
called before <html> tag.
<?php
session_start();
?>
March 3, 201957
Sessions
<?php
session_start();
if (!isset($_SESSION['count']))
$_SESSION['count'] = 0;
else
$_SESSION['count']++;
?>
March 3, 201958
Sessions
 session_unregister(´varname´);
unregisters a session variable
 session_destroy() destroys a
session
March 3, 201959
March 3, 201960
Session Example 1
<?php
session_start();
if (!isset($_SESSION["intVar"]) ){
$_SESSION["intVar"] = 1;
} else {
$_SESSION["intVar"]++;
}
echo "<p>In this session you have
accessed this page " .
$_SESSION["intVar"] . "times.</p>";
?>
March 3, 201961
Session Example 2
<?php session_start();?>
<?php
$thisPage = $_SERVER['PHP_SELF'];
$pageNameArray = explode('/', $thisPage);
$pageName = $pageNameArray[count($pageNameArray) - 1];
print "The name of this page is: $pageName<br/>";
$nameItems = explode(„.', $pageName);
$sessionName = $nameItems[0];
print "The session name is $sessionName<br/>";
if (!isset($_SESSION[$sessionName])) {
$_SESSION[$sessionName] = 0;
print "This is the first time you have visited this page<br/>";
}
else {
$_SESSION[$sessionName]++;
}
print "<h1>You have visited this page " . $_SESSION[$sessionName] .
" times</h1>";
?>
March 3, 201962

More Related Content

PPT
Short Intro to PHP and MySQL
PPT
Open Source Package PHP & MySQL
PPT
slidesharenew1
PPT
My cool new Slideshow!
ODP
Php Learning show
PPTX
PPT
PHP Workshop Notes
PPTX
PHP Powerpoint -- Teach PHP with this
Short Intro to PHP and MySQL
Open Source Package PHP & MySQL
slidesharenew1
My cool new Slideshow!
Php Learning show
PHP Workshop Notes
PHP Powerpoint -- Teach PHP with this

What's hot (20)

PPT
Php mysql
ODP
PHP Web Programming
ODP
PHP Basic
PPS
Web technology html5 php_mysql
PPT
Php i basic chapter 3
PPSX
Php and MySQL
PPT
Php mysql
PPT
Basic PHP
PPT
Php essentials
PPT
PHP MySQL Workshop - facehook
PDF
Programming with php
PPT
Dynamic Web Pages Ch 1 V1.0
PDF
PHP7. Game Changer.
PPT
PHP POWERPOINT SLIDES
PDF
Sperimentazioni di Tecnologie e Comunicazioni Multimediali: Lezione 5
DOCX
PHP NOTES FOR BEGGINERS
PPT
Php mysql training-in-mumbai
Php mysql
PHP Web Programming
PHP Basic
Web technology html5 php_mysql
Php i basic chapter 3
Php and MySQL
Php mysql
Basic PHP
Php essentials
PHP MySQL Workshop - facehook
Programming with php
Dynamic Web Pages Ch 1 V1.0
PHP7. Game Changer.
PHP POWERPOINT SLIDES
Sperimentazioni di Tecnologie e Comunicazioni Multimediali: Lezione 5
PHP NOTES FOR BEGGINERS
Php mysql training-in-mumbai
Ad

Similar to Php-mysql by Jogeswar Sir (20)

PPT
Php mysql
PPT
PHP - Introduction to PHP Fundamentals
PPT
Prersentation
PPTX
Unit 5-PHP Declaring variables, data types, array, string, operators, Expres...
PPT
PPTX
unit 1.pptx
PPTX
Php Unit 1
PPT
Php classes in mumbai
PPT
Training on php by cyber security infotech (csi)
PPT
PPT
Php(report)
PDF
Web 8 | Introduction to PHP
PPT
PPTX
Php by shivitomer
PPTX
Day1
PPTX
Lecture3 php by okello erick
PPT
Php introduction with history of php
PPT
php fundamental
PPT
Php mysql
PHP - Introduction to PHP Fundamentals
Prersentation
Unit 5-PHP Declaring variables, data types, array, string, operators, Expres...
unit 1.pptx
Php Unit 1
Php classes in mumbai
Training on php by cyber security infotech (csi)
Php(report)
Web 8 | Introduction to PHP
Php by shivitomer
Day1
Lecture3 php by okello erick
Php introduction with history of php
php fundamental
Ad

Recently uploaded (20)

PPT
WHY_R12 Uaafafafpgradeaffafafafaffff.ppt
PDF
UNIT 1 Introduction fnfbbfhfhfbdhdbdto Java.pptx.pdf
PPTX
Complete Guide to Microsoft PowerPoint 2019 – Features, Tools, and Tips"
PPTX
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
PDF
Skskkxiixijsjsnwkwkaksixindndndjdjdjsjjssk
PPTX
rapid fire quiz in your house is your india.pptx
PDF
Quality Control Management for RMG, Level- 4, Certificate
PDF
The Advantages of Working With a Design-Build Studio
PPTX
Causes of Flooding by Slidesgo sdnl;asnjdl;asj.pptx
PDF
SEVA- Fashion designing-Presentation.pdf
PDF
Urban Design Final Project-Context
PDF
Interior Structure and Construction A1 NGYANQI
PPT
pump pump is a mechanism that is used to transfer a liquid from one place to ...
PPT
EGWHermeneuticsffgggggggggggggggggggggggggggggggg.ppt
PPTX
CLASSIFICATION OF YARN- process, explanation
PDF
YOW2022-BNE-MinimalViableArchitecture.pdf
PPTX
6- Architecture design complete (1).pptx
PPTX
Implications Existing phase plan and its feasibility.pptx
PPTX
DOC-20250430-WA0014._20250714_235747_0000.pptx
PPTX
CLASS_11_BUSINESS_STUDIES_PPT_CHAPTER_1_Business_Trade_Commerce.pptx
WHY_R12 Uaafafafpgradeaffafafafaffff.ppt
UNIT 1 Introduction fnfbbfhfhfbdhdbdto Java.pptx.pdf
Complete Guide to Microsoft PowerPoint 2019 – Features, Tools, and Tips"
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
Skskkxiixijsjsnwkwkaksixindndndjdjdjsjjssk
rapid fire quiz in your house is your india.pptx
Quality Control Management for RMG, Level- 4, Certificate
The Advantages of Working With a Design-Build Studio
Causes of Flooding by Slidesgo sdnl;asnjdl;asj.pptx
SEVA- Fashion designing-Presentation.pdf
Urban Design Final Project-Context
Interior Structure and Construction A1 NGYANQI
pump pump is a mechanism that is used to transfer a liquid from one place to ...
EGWHermeneuticsffgggggggggggggggggggggggggggggggg.ppt
CLASSIFICATION OF YARN- process, explanation
YOW2022-BNE-MinimalViableArchitecture.pdf
6- Architecture design complete (1).pptx
Implications Existing phase plan and its feasibility.pptx
DOC-20250430-WA0014._20250714_235747_0000.pptx
CLASS_11_BUSINESS_STUDIES_PPT_CHAPTER_1_Business_Trade_Commerce.pptx

Php-mysql by Jogeswar Sir

  • 1. PHP/MySQL TutorialIntroduction to Database By: Prof. Jogeswar Tripathy NIIS,Bhubaneswar March 3, 2019 1
  • 2. What is PHP?  PHP == „PHP Hypertext Pre-processor‟  Open-source, server-side scripting language  Used to generate dynamic web-pages  PHP scripts reside between reserved PHP tags  This allows the programmer to embed PHP scripts within HTML pages March 3, 20192
  • 3. What is PHP (cont‟d)  Interpreted language, scripts are parsed at run-time rather than compiled beforehand  Executed on the server-side  Source-code not visible by client  „View Source‟ in browsers does not display the PHP code  Various built-in functions allow for fast development  Compatible with many popular databases March 3, 20193
  • 4. 3 Tier architecture PHP script Remote services Web Server (Apache, IIS) Browser (IE, FireFox, Opera) Desktop (PC or MAC) Database Database Server SQL Client application HTTP HTML Web Service tables DHTML SMS vision touch voice SMS system March 3, 20194
  • 5. PHP advantages  Any changes to header or footer only require editing of a single file.  This reduces the amount of work necessary for site maintenance and redesign.  Helps separate the content and design for easier maintenance Page 1 Content Page 5 Content Page 3 Content Page 2 Content Page 4 Content Header Footer March 3, 20195
  • 6. What does PHP code look like?  Structurally similar to C/C++  Supports procedural and object-oriented paradigm (to some degree)  All PHP statements end with a semi-colon  Each PHP script must be enclosed in the reserved PHP tag <?php … ?> March 3, 20196
  • 7. Comments in PHP  Standard C, C++, and shell comment symbols // C++ and Java-style comment # Shell-style comments /* C-style comments These can span multiple lines */ March 3, 20197
  • 8. Variables in PHP  PHP variables must begin with a “$” sign  Case-sensitive ($Foo $foo $fOo)  Global and locally-scoped variables  Global variables can be used anywhere  Local variables restricted to a function or class  Certain variable names reserved by PHP  Form variables ($_POST, $_GET)  Server variables ($_SERVER)  Etc. March 3, 20198
  • 9. Variable usage <?php $foo = 25; // Numerical variable $bar = “Hello”; // String variable $foo = ($foo * 7); // Multiplies foo by 7 $bar = ($bar * 7); // Invalid expression ?> March 3, 20199
  • 10. Echo  The PHP command „echo‟ is used to output the parameters passed to it  The typical usage for this is to send data to the client‟s web-browser  Syntax  echo string arg1 [, string argn...] March 3, 201910
  • 11. Echo example  Notice how echo „5x5=$foo‟ outputs $foo rather than replacing it with 25  Strings in single quotes („ ‟) are not interpreted or evaluated by PHP  This is true for both variables and character escape- sequences (such as “n” or “”) <?php $foo = 25; // Numerical variable $bar = “Hello”; // String variable echo $bar; // Outputs Hello echo $foo,$bar; // Outputs 25Hello echo “5x5=”,$foo; // Outputs 5x5=25 echo “5x5=$foo”; // Outputs 5x5=25 echo „5x5=$foo‟; // Outputs 5x5=$foo ?> March 3, 201911
  • 12. Arithmetic Operations  $a - $b // subtraction  $a * $b // multiplication  $a / $b // division  $a += 5 // $a = $a+5 <?php $a=15; $b=30; $total=$a+$b; Print $total; Print “<p><h1>$total</h1>”; // total is 45 ?> March 3, 201912
  • 13. Concatenation  Use a period to join strings into one. <?php $string1=“Hello”; $string2=“PHP”; $string3=$string1 . “ ” . $string2; Print $string3; ?> Hello PHP March 3, 201913 Output
  • 14. Escaping the Character  If the string has a set of double quotation marks that must remain visible, use the [backslash] before the quotation marks to ignore and display them. <?php $heading=“”Computer Science””; Print $heading; ?> “Computer Science” March 3, 201914 Output
  • 15. PHP Control Structures if (expr) statement <?php if ($a > $b) { echo "a is bigger than b"; $b = $a; } ?> <?php if ($a > $b) { echo "a is greater than b"; } else { echo "a is NOT greater than b"; } ?> March 3, 201915
  • 16. if ($foo == 0) { echo „The variable foo is equal to 0‟; } else if (($foo > 0) && ($foo <= 5)) { echo „The variable foo is between 1 and 5‟; } else { echo „The variable foo is equal to „.$foo; } March 3, 201916 PHP Control Structures
  • 17. <?php switch ($i) { case "apple": echo "i is apple"; break; case "bar": echo "i is bar"; break; case "cake": echo "i is cake"; break; default: echo „Enter correct option‟; } ?> March 3, 201917 PHP Control Structures
  • 18. Loops  while (condition) {statements;} <?php $count=0; While($count<3) { Print “hello PHP. ”; $count += 1; // $count = $count + 1; // or // $count++; ?> hello PHP. hello PHP. hello PHP. March 3, 201918 Output
  • 19. Loops  for (expr1; expr2; expr3) statement  <?php $i = 0; do { echo $i; } while ($i > 0); ?> March 3, 201919
  • 20. Loops  <?php $arr = array(1, 2, 3, 4); foreach ($arr as $value) { echo “$value n”; } foreach ($arr as &$value) { $value = $value * 2; } // $arr is now array(2, 4, 6, 8) unset($value);//break the reference ?> March 3, 201920
  • 21. Loops  foreach ($arr as $key => $value) { echo "Key:$key; Value:$value<br />n"; }  break ends execution of the current for, foreach, while, do-while or switch structure.  continue is used within looping structures to skip the rest of the current loop iteration and continue execution at the condition evaluation and then the beginning of the next iteration. March 3, 201921
  • 22. Arrays  An array in PHP is actually an ordered map which maps values to keys.  An array can be thought of in many ways:  Linearly indexed array , list (vector), hash table (which is an implementation of a map), dictionary, collection, stack (LIFO), queue (FIFO) March 3, 201922
  • 23. Arrays  Kinds of arrays:  numeric arrays.  associative arrays.  multi dimensional arrays. March 3, 201923
  • 24. Arrays  In numeric arrays each key value corresponds to numeric values.  They can be divided into two categories 1.automatic numeric array index. 2.manual array numeric index. automatic numeric array index <?php $x=array(1,2,3); print_r($x); ?> array(0=>1,1=>2,2=>3) March 3, 201924 Output :
  • 25. Arrays  Manual array numeric index <?php $x[2]=10; $x[3]=50;//$x=array(2=>10,3=>50); echo $x[2]; echo $x[3]; ?>  Associative arrays In associated arrays each ID associated with its value <?php $x=array(“ab”=>1,”cd”=>2,”xy”=>3); print_r($x); ?> March 3, 201925
  • 26. Arrays  Multidimensional Arrays-An array contains one or more arrays <?php $z=array(array(10,20,30),array(40,50,60)); print_r($z); ?> Array ( [0] => Array ( [0] => 10 [1] => 20 [2] => 30 ) [1] => Array ( [0] => 40 [1] => 50 [2] => 60 ) ) March 3, 201926
  • 27. Arrays <?php $x=array(“ab”=>1,array(2,3,4),”cd ”=>8); print_r($x); ?> Array ( [“ab”] => 1 [0] => Array ( [0] => 2 [1] => 3 [2] => 4 ) [”cd”] => 8 ) March 3, 201927
  • 28. Arrays <?php $x=array(3=>4,array(2,3,4),5); print_r($x); ?> Array ( [3] => 4 [4] => Array ( [0] => 2 [1] => 3 [2] => 4 ) [5] => 5 ) March 3, 201928
  • 29. Arrays Array operations  sort  ksort  rsort  krsort  array_merge  array_combine  array_intersect March 3, 201929
  • 30. Date Display $datedisplay=date(“yyyy/m/d”); print $datedisplay; $datedisplay=date(“l, F J, Y”); print $datedisplay; Sunday, March 3, 2019 2019/3/3 March 3, 201930 Output : Output :
  • 31. Month, Day & Date Format Symbols M Jan F January m 01 n 1 Day of Month d 01 Day of Month J 1 Day of Week l Monday Day of Week D Mon March 3, 2019 31
  • 32. Functions  Functions MUST be defined before then can be called  Function headers are of the format  Unlike variables, function names are not case sensitive function functionName($arg_1, $arg_2, …, $arg_n) March 3, 201932
  • 33. Functions example <?php // This is a function function foo($arg_1, $arg_2) { $arg_2 = $arg_1 * $arg_2; return $arg_2; } $result_1 = foo(12, 3); // Store the function echo $result_1; // Outputs 36 echo foo(12, 3); // Outputs 36 ?> March 3, 201933
  • 34. Include Files  include “header.php”;  include (“footer.php”);  This inserts files; the code in files will be inserted into current code.  require is identical to include except upon failure it will also produce a fatal E_COMPILE_ERROR level error. In other words, it will halt the script whereas include only emits a warning (E_WARNING) which allows the script to continue. March 3, 201934
  • 35. Include Files  The include_once statement includes and evaluates the specified file during the execution of the script.  This is a behavior similar to the include statement, with the only difference being that if the code from a file has already been included, it will not be included again.  The require_once statement is identical to require except PHP will check if the file has already been included, and if so, not include (require) it again March 3, 201935
  • 36. PHP - Forms <?php if ($_POST["submit"]) echo "<h2>You clicked Submit!</h2>"; else if ($_POST["cancel"]) echo "<h2>You clicked Cancel!</h2>"; ?> <form action="form.php" method="post"> <input type="submit" name="submit" value="Submit"> <input type="submit" name="cancel" value="Cancel"> </form> March 3, 201936
  • 37. PHP - Forms <?php … $term=$_REQUEST[“sterm”]; … ?> <form action="form.php" method="post"> <input type=“text" name=“sterm" value=“<?= $term ?>"> </form> March 3, 201937
  • 38. MySQL Connectivity  mysql_connect()  The mysql_connect()function opens a non- persistent MySQL connection.  This function returns the connection on success, or FALSE and an error on failure. You can hide the error output by adding an '@' in front of the function name.  Syntax  mysql_connect(server,user,pwd,newlink,cl ientflag) March 3, 201938
  • 39. MySQL Connectivity Parameter Description server Specifies the server to connect to user Specifies the username to log in with. pwd Specifies the password to log in with. newlink If a second call is made to mysql_connect() with the same arguments, no new connection will be established; instead, the identifier of the already opened connection will be returned clientflag •MYSQL_CLIENT_SSL - Use SSL encryption •MYSQL_CLIENT_COMPRESS - Use compression protocol •MYSQL_CLIENT_IGNORE_SPACE - Allow space after function names •MYSQL_CLIENT_INTERACTIVE - Allow interactive timeout seconds of inactivity before closing the connection March 3, 201939
  • 40. MySQL Connectivity  Example: <?php $con = mysql_connect("localhost","mysql_user","mysql _pwd"); if (!$con){ die('Could not connect: „.mysql_error()); } echo 'Connected successfully'; mysql_close($con); ?> March 3, 201940
  • 41. MySQL Connectivity  mysql_close()  The mysql_close() function closes a non- persistent MySQL connection.  This function returns TRUE on success, or FALSE on failure.  Syntax:  mysql_close(connection) Parameter Description connection Specifies the MySQL connection to close. If not specified, the last connection opened by mysql_connect() is used. March 3, 201941
  • 42. MySQL Connectivity  mysql_select_db()  The mysql_select_db() function sets the active MySQL database.  This function returns TRUE on success, or FALSE on failure.  Syntax:  mysql_select_db(database,connection) Parameter Description database Required. Specifies the database to select. connection Optional. Specifies the MySQL connection. If not specified, the last connection opened by mysql_connect() or mysql_pconnect() is used. March 3, 201942
  • 43. MySQL Connectivity <?php $con = mysql_connect("localhost", “root", “admin"); if (!$con){ die('Could not connect: '. mysql_error()); } $db_selected = mysql_select_db("test_db", $con); if (!$db_selected){ die ("Can't use test_db : “. mysql_error()); } mysql_close($con); ?> March 3, 201943
  • 44. MySQL Connectivity  mysql_query()  The mysql_query() function executes a query on a MySQL database.  This function returns the query handle for SELECT queries, TRUE/FALSE for other queries, or FALSE on failure.  Syntax  mysql_query(query,connection) Parameter Description query Required. Specifies the SQL query to send (should not end with a semicolon) connection Optional. Specifies the MySQL connection. If not specified, the last connection opened by mysql_connect() or mysql_pconnect() is used. March 3, 201944
  • 45. MySQL Connectivity <?php $con = mysql_connect("localhost",”root",”admin"); if (!$con){ die('Could not connect: ' . mysql_error()); } $sql = "CREATE DATABASE my_db"; if (mysql_query($sql,$con)){ echo "Database my_db created"; } else{ echo "Error creating database:" . mysql_error(); } ?> March 3, 201945
  • 46. MySQL Connectivity <?php $con = mysql_connect("localhost", “root", “admin"); if (!$con){ die('Could not connect: '. mysql_error()); } $db_selected = mysql_select_db("test_db", $con); if (!$db_selected){ die ("Can't use test_db : “. mysql_error()); } $sql="SELECT * FROM Person where name=„$uname‟"; mysql_query($sql,$con); mysql_close($con); ?> March 3, 201946
  • 47. MySQL Connectivity  mysql_fetch_array()  The mysql_fetch_array() function returns a row from a recordset as an associative array and/or a numeric array.  This function gets a row from the mysql_query() function and returns an array on success, or FALSE on failure or when there are no more rows.  Syntax  mysql_fetch_array(data,array_type) March 3, 201947
  • 48. MySQL Connectivity Parameter Description data Required. Specifies which data pointer to use. The data pointer is the result from the mysql_query() function array_type Optional. Specifies what kind of array to return.Possible values: •MYSQL_ASSOC - Associative array •MYSQL_NUM - Numeric array •MYSQL_BOTH - Default. Both associative and numeric array March 3, 201948
  • 49. MySQL Connectivity  mysql_fetch_row()  The mysql_fetch_row() function returns a row from a recordset as a numeric array.  This function gets a row from the mysql_query() function and returns an array on success, or FALSE on failure or when there are no more rows.  Syntax  mysql_fetch_row(data) Parameter Description data Required. Specifies which data pointer to use. The data pointer is the result from the mysql_query() function March 3, 201949
  • 50. MySQL Connectivity <?php echo "<table>"; while ($row = mysql_fetch_row($result)) { echo "<tr><td>".$row[0] ."</td><td>".$row[1]. "</td><td>".$row[2]."</td><td>". $row[3]."</td></tr>"; } echo "</table>"; ?> March 3, 201950
  • 51. MySQL Connectivity <?php echo "<table>"; while ($row = mysql_fetch_array($result)) { echo "<tr><td>{$row[„ID‟]} </td><td>{$row[1]} </td><td>{$row[2]}</td><td> ${row[„mailid‟]}</td></tr>"; } echo "</table>"; ?> March 3, 201951
  • 52. Cookies  The setcookie() function is used to create cookies. Should be called before <html> tag.  setcookie(name, [value], [expire], [path], [domain], [secure]);  <?php setcookie("uname", $name, time()+36000); ?>  This sets a cookie named "uname" - that expires after ten hours.  Either a blank value or a time in the past makes the cookie expired. March 3, 201952
  • 53. Cookies  To access a cookie, refer to the cookie name as a variable or use $_COOKIE array. The isset() checks whether the cookie is set or not <html> <body> <?php if (isset($uname))// isset($_Cookie[$uname]) echo "Welcome " . $_Cookie[$uname]. "!<br />"; else echo "You are not logged in!<br />"; ?> ?> </body> </html> March 3, 201953
  • 54. Cookies Benefit of Cookies :  Cookies are used for authenticating, tracking, and maintaining specific information about users  Personalised home pages  Electronic shopping carts. March 3, 201954
  • 55. Why use sessions  A normal HTML website will not pass data from one page to another  All information is forgotten when a new page is loaded  Many websites need to pass user data from one page to another  for tasks like a shopping cart, which requires data(the user's selected product) to be remembered from one page to the next  Using PHP sessions is one solution. March 3, 201955
  • 56.  Need for data to stored on the server  Unique session information for each user  Transient data, only relevant for short time  Data does not contain secret information  Similar to Cookies, but it is stored on the server  More secure, once established, no data is sent back and forth between the machines  Works even if cookies are disabled  Example: we want to count the number of “hits” on our web page. March 3, 201956 When should you use sessions?
  • 57. Sessions  The session_start() function is used to create a session. Should be called before <html> tag. <?php session_start(); ?> March 3, 201957
  • 59. Sessions  session_unregister(´varname´); unregisters a session variable  session_destroy() destroys a session March 3, 201959
  • 60. March 3, 201960 Session Example 1 <?php session_start(); if (!isset($_SESSION["intVar"]) ){ $_SESSION["intVar"] = 1; } else { $_SESSION["intVar"]++; } echo "<p>In this session you have accessed this page " . $_SESSION["intVar"] . "times.</p>"; ?>
  • 61. March 3, 201961 Session Example 2 <?php session_start();?> <?php $thisPage = $_SERVER['PHP_SELF']; $pageNameArray = explode('/', $thisPage); $pageName = $pageNameArray[count($pageNameArray) - 1]; print "The name of this page is: $pageName<br/>"; $nameItems = explode(„.', $pageName); $sessionName = $nameItems[0]; print "The session name is $sessionName<br/>"; if (!isset($_SESSION[$sessionName])) { $_SESSION[$sessionName] = 0; print "This is the first time you have visited this page<br/>"; } else { $_SESSION[$sessionName]++; } print "<h1>You have visited this page " . $_SESSION[$sessionName] . " times</h1>"; ?>