Introduction to PHP
Download
Report
Transcript Introduction to PHP
Server & Client
Client: Your computer
Server: Powerful &
Expensive computer.
Requires network
access
Static vs Dynamic
Static
Dynamic
Show case web sites
The client asks the server for a web page
The server answers back by sending the web page
Static web pages are made by (X)HTML & CSS
Most of web sites we use nowadays
The client asks the server for a web page
The server creates the page specially for the client
The server sends the page that has been generated
Dynamic web pages are made by (X)HTML, CSS
PHP and MySQL
http://blog.europcsolutions.com/php-introduction-to-php/
Your project
Server: using MySQL
Client: using PHP
Connect MySQL with PHP:
http://www.cs.indiana.edu/~yuqwu/cours
es/B561-fall13/webpage/phpmysql.html
How PHP Works
1
4
2
5
6
5
3
6
5
1. User request
2. The request goes to web
server
3. The request goes to PHP
interpreter
4. The request is interpreted
by PHP interpreter
5. PHP interpreter process
the page by communicating
with file system, databases
and email servers
6. Deliver a web page to web
server to return to the user
browser
PHP: Hypertext Preprocessor
PHP is the Hypertext Preprocessor
Script language
Embedded into HTML
Run as Apache module
Can use DB (MySQL, Oracle, Microsoft SQL,
PostgreSQL)
Rich features: XML, PDF etc.,
Advantages of PHP
Free
Pre-installed in Linux distributions
Open Source
Multiplatform
Simple, easy to learn and use
Procedural language
Compare with JavaScript which is event-driven
C-like syntax - { } ;
Extensive Function Library
Good Web-server integration
Script embedded in HTML
Easy access to form data and output of HTML pages
Not fully object-oriented
Java is fully object oriented – all functions have to be in a class
In PHP, classes are additional but quite simple to use
Architecture
touch
Browser
(IE, FireFox,
Opera)
vision
HTTP
PHP script
HTML
Desktop
(PC or MAC)
SQL
Web Server
(Apache, IIS)
Database
tables
Database
Server
PHP: Variables, constant,
operators and Control structures
Variable
$var = 123;
Constant
define(“Zipcode", 40508);
Operators
Assignment (e.g. =, +=, *=)
Arithmetic (e.g. +, -, *)
Comparison (e.g. <, >, >=, ==)
Logical (e.g. !, &&, ||)
Control Structures
Conditional (branching) structures (e.g. if/else)
Repetition structures (e.g. while loops).
Datatypes
Boolean
Integer
true
false
100
0x34
Floating point
Array
array(“lexington", “hanoi", "london")
array(“kentucky" => “lexington", "vietnam" => "hanoi",
"england" => "london")
$a[2]
$a["vietnam"]
String Data type
A string is a sequence of chars
$stringTest = “this is a sequence of chars”;
echo $stringTest[0]; //output: t
echo $stringTest; //output: this is a sequence of chars
A single quoted strings is displayed “as-is”
$age = 37;
$stringTest = 'I am $age years old'; // output: I am $age years old
$stringTest = “I am $age years old”; // output: I am 37 years old
Concatenation
$conc = ”is “.”a “.”composed “.”string”;
echo $conc; // output: is a composed string
$newConc = 'Also $conc '.$conc;
echo $newConc; // output: Also $conc is a composed string
Example
<?php
PHP CODE GOES IN HERE
?>
IP address: 172.31.40.119 (Need to be in UK network to access)
FORM Handling
GET
$_GET['name']
POST
$_POST['name']
FORM Handling Example
<form action="test.php" method="post">
<table>
<tr>
<th>Name:</th>
<td><input type="text" name="name"></td>
</tr>
<tr>
<th>Age:</th>
<td><input type="text" name="age"></td>
</tr>
…
</table>
</form>
test.php
<?
<p>Hello <?=$_POST['name']?>.
You are <?=$_POST['age']?> years old.</p>
?>
HTML FORM
PHP
name: Kausalya
Hello Kausalya.
You are 22 years old.
age:
22
submit
Example(2) – Loop manipulations
Output
While Loops
Arrays and Functions
Output
Returning Values from Functions
New Output
Including Files
Simple use the include keyword and use the
path to the file you wish to include.
Step 1: Create the file you wish to include.
This example holds navigational links.
Step 2: Include the File in Code
New, Consistent Output
Function 1 (No Parameters)
Output (Function 1)
Function 2 (Pass by Value)
Output (Function 2)
Function 3 (Pass by Reference)
Output (Function 3)
How to connect PHP with MySQL
http://www.cs.indiana.edu/~yuqwu/cours
es/B561-fall13/webpage/phpmysql.html
This tutorial introduces how to use PHP
and MySQL in a LINUX environment.
You may choose to host the server and
client on our department machines or
your laptop.
References
•
Websites
•
http://www.acm-ou.org
•
www.php.net
•
www.phparchitect.com
•
www.google.com
•
www.tom.sfc.keio.ac.jp/~hagino/itss/
•
csmaster.sxu.edu/appel/web550
•
http://www.phpbuilder.com/
•
http://www.devshed.com/
•
http://www.phpmyadmin.net/
•
http://www.hotscripts.com/PHP/
•
http://www.mysql.com/
•
http://www.owasp.org/
•
www.textsandtech.org/~rudy/phpdemo1
•
http://www.webreference.com/programming/php/by_example2/5.html
Books
PHP and MySQL Web Development 2nd Edition, Welling & Thomson
Web Database Applications with PHP & MySQL, O’Reilly Publishers
PHP Cookbook, O’Reilly Publishers
MySQL Cookbook, O’Reilly Publishers
“PHP and MySQL Web Development”, Luke Welling and Laura Thomson, SA
Listservs
thelist, http://lists.evolt.org/ (Note: very general and large volume of email)