Professional Documents
Culture Documents
Ngon Ngu PHP
Ngon Ngu PHP
Ngon Ngu PHP
Một khối lệnh PHP bao giờ cũng đƣợc bắt đầu
bằng <?php và kết thúc bằng ?>
<?php
// các lệnh PHP
?>
Một file PHP có thể chứa các lệnh PHP, các thẻ
HTML, các đoạn mã JavaScript.
VÍ DỤ
<html>
<head>
<title>Demo 2</title>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8">
</head>
<body>
<?php
// dong chu thich
/*
doan chu thich
*/
echo "Đoạn này viết bằng PHP!";
?>
<br>
Đoạn này viết bằng HTML.
</body>
</html>
BIẾN TRONG PHP
Kiểu biến đƣợc xác định khi gán với giá trị tƣơng
ứng.
VÍ DỤ VỀ BIẾN
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<?php
$x = 3; // bien kieu nguyen
$y = 1.23; // bien kieu so thuc
$s = "Chuoi ky tu"; // bien keu xau ky tu
echo $x;
echo "<br>";
echo $y;
echo "<br>";
echo $s;
echo "<br>";
?>
</body>
</html>
KIỂU XÂU KÝ TỰ
Lấy giá trị của biến chứ không phải là tên của
biến
VÍ DỤ - CHUỖI KÝ TỰ
<html>
<head>
<title>String</title>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8">
</head>
<body>
<?php
$s = "Hello world!";
echo $s . "<br>";
echo "Độ dài chuỗi ký tự: " . strlen($s). "<br>";
echo "Nội dung: $s";
?>
</body>
</html>
CÁC TOÁN TỬ - SỐ HỌC
+ cộng
- trừ
* nhân
/ chia
% lấy phần dư
++ tăng
-- giảm
CÁC TOÁN TỬ - GÁN
= gán
+= cộng rồi gán
-= trừ rồi gán
*= nhân rồi gán
/= chia rồi gán
%= lấy phần dư rồi gán
CÁC TOÁN TỬ - SO SÁNH
== so sánh bằng
!= khác
< nhỏ hơn
> lớn hơn
<= nhỏ hơn hoặc bằng
>= lớn hơn hoặc bằng
CÁC TOÁN TỬ - LOGIC
&& và
|| hoặc
! đảo
BIỂU THỨC IF…ELSE…
Cú pháp – dạng 1
if điều_kiện
lệnh thực hiện nếu điều kiện đúng
Cú pháp – dạng 2
if điều_kiện
lệnh thực hiện nếu điều kiện đúng
else
lệnh thực hiện nếu điều kiện sai
BIỂU THỨC ĐIỀU KIỆN IF…ELSE…
Cú pháp – dạng 3
if điều_kiện_1
lệnh thực hiện nếu điều kiện 1 đúng
elseif điều_kiện_2
lệnh thực hiện nếu điều kiện 2 đúng
else
lệnh thực hiện nếu điều kiện 2 sai
VÍ DỤ - IF
<html>
<head>
<title>if statement</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<?php
$d=date("D");
if ($d=="Fri")
echo "Have a nice weekend!";
elseif ($d=="Sun")
echo "Have a nice Sunday!";
else
echo "Have a nice day!";
?>
</body>
</html>
BIỂU THỨC LỰA CHỌN SWITCH CASE
Cú pháp
switch (biểu_thức)
{
case giá_trị_1:
lệnh thực hiện nếu biểu_thức = giá_trị_1;
break;
case giá_trị_2:
lệnh thực hiện nếu biểu_thức = giá_trị_2;
break;
default:
lệnh thực hiện nếu biểu_thức khác các giá_trị_1 và giá_trị_2;
}
VÍ DỤ - SWITCH
<html> echo "Number 2";
<head> break;
<title>Switch Statement</title> case 3:
</head> echo "Number 3";
<body> break;
<?php default:
switch ($x) echo "No number between 1 and
{ 3";
case 1: }
echo "Number 1"; ?>
break; </body>
case 2: </html>
KIỂU MẢNG
Lƣu trữ một hoặc nhiều giá trị trong một biến đơn
(biến mảng)
Các kiểu mảng
Mảng chỉ số – dùng chỉ số để phân biệt các thành
phần mảng
Mảng kết hợp – dùng một chuỗi ký tự (ID) để xác
định các thành phần mảng
KIỂU MẢNG – CHỈ SỐ
Khai báo
$names = array(“An”, “Binh”, “Cuong”);
hoặc
$names[0] = “An”;
$names[1] = “Binh”;
$names[2] = “Cuong”;
Sử dụng
echo $names[0] . $names[1] . $names[2];
KIỂU MẢNG – KẾT HỢP
Khai báo
$ages = array("An"=>32, "Binh"=>30, "Cuong"=>34);
hoặc
$ages[“An”] = 32;
$ages[“Binh”] = 30;
$ages[“Cuong”] = 34;
Sử dụng
echo “Tuổi của An là ” . $ages[„An‟];
VÍ DỤ - MẢNG
<html>
<head>
<title>Array</title>
</head>
<body>
<?php
$names = array("An", "Binh", "Cuong");
$ages = array("An"=>32, "Binh"=>30, "Cuong"=>34);
echo "Ten 3 nguoi: " . $names[0] . $names[1] .
$names[2] . "<br>";
echo "Tuoi cua An la ". $ages['An'];
?>
</body>
</html>
VÒNG LẶP – XÁC ĐỊNH – FOR
Cú pháp
for (khởi_tạo; điều_kiện; thay_đổi_biến)
{
Lệnh được lặp
}
VÍ DỤ - FOR
<html>
<head>
<title>For</title>
</head>
<body>
<?php
for ($i = 0; $i < 5; $i++)
{
echo "Hello world $i<br>";
}
?>
</body>
</html>
VÒNG LĂP – KHÔNG XÁC ĐỊNH – WHILE
Cú pháp – dạng 1
while (điều_kiện)
{
lệnh đƣợc thực hiện khi nào điều kiện còn đúng;
}
Cú pháp – dạng 2
do
{
lệnh đƣợc thực hiện khi nào điều kiện còn đúng;
}
while (điều_kiện);
HÀM TRONG PHP
function tên_hàm(các_giá_trị_truyền)
{
// nội dung hàm
return giá_trị_trả_về;
}
VÍ DỤ - HÀM
<html>
<head> echo add(1,4);
<title>Function</title> ?>
</head> </body>
</html>
<body>
<?php
function add($x, $y)
{
$z = $x + $y;
return $z;
}
BÀI TẬP
POST
SO SÁNH 2 PHƢƠNG THỨC
Đều đƣợc sử dụng để truyền thông tin đến server bao
gồm các trƣờng và giá trị của các trƣờng đó.
Thông tin gửi bằng phƣơng thức GET đƣợc hiển thị
lên ô địa chỉ của trình duyệt, nhƣng bị hạn chế về độ
dài (<100 ký tự)
=> Có thể trực tiếp gửi thông tin đến server mà không cần
tạo form
Thông tin gửi bằng phƣơng thức POST không đƣợc
hiển thị lên cửa sổ trình duyệt.
=> Sử dụng để gửi các thông tin quan trọng
VÍ DỤ - FORM – PHƢƠNG THỨC GET
<html> <input type="checkbox" name="SoThich"
<head> value="docsach"> Đọc sách
<meta http-equiv="Content-Type" <input type="checkbox" name="SoThich"
content="text/html; charset=utf-8" value="nghenhac"> Nghe nhạc
/> <input type="checkbox" name="SoThich"
<title>Form 1</title> value="xemphim"> Xem phim <br>
</head> Tôi ở tại
<body> <select name="NoiO">
<form action="form1.php" <option value="vietnam">Việt
method="get"> Nam</option>
Tên của Tôi: <input name="Ten" <option value="lao">Lào</option>
type="text"><input name="Ho" <option value="campuchia">Cam Pu
type="text"><br> Chia</option>
Giới tính: <input type="radio" </select><br>
name="GioiTinh" value="nam"> Nam <input type="submit" value="Send">
<input type="radio" name="GioiTinh" </form>
value="nu"> Nữ<br> </body>
Sở thích: </html>
VÍ DỤ - PHƢƠNG THỨC GET
http://localhost/php/form1.php?Ten=Nguyen&Ho=Anh&GioiTinh=
nam&SoThich=docsach&SoThich=nghenhac&NoiO=vietnam
VÍ DỤ - FORM – PHƢƠNG THỨC POST
<html> <input type="checkbox" name="SoThich"
<head> value="docsach"> Đọc sách
<meta http-equiv="Content-Type" <input type="checkbox" name="SoThich"
content="text/html; charset=utf-8" value="nghenhac"> Nghe nhạc
/> <input type="checkbox" name="SoThich"
<title>Form 2</title> value="xemphim"> Xem phim <br>
</head> Tôi ở tại
<body> <select name="NoiO">
<form action="form1.php" <option value="vietnam">Việt
method=“post"> Nam</option>
Tên của Tôi: <input name="Ten" <option value="lao">Lào</option>
type="text"><input name="Ho" <option value="campuchia">Cam Pu
type="text"><br> Chia</option>
Giới tính: <input type="radio" </select><br>
name="GioiTinh" value="nam"> Nam <input type="submit" value="Send">
<input type="radio" name="GioiTinh" </form>
value="nu"> Nữ<br> </body>
Sở thích: </html>
VÍ DỤ - PHƢƠNG THỨC POST
XỬ LÝ FORM TRONG PHP
Thông tin đƣợc gửi bằng phƣơng thức GET đƣợc
lƣu trong biến $_GET
Thông tin đƣợc gửi bằng phƣơng thức POST
đƣợc lƣu trong biến $_POST
Có thể sử dụng biến $_REQUEST để lấy thông
tin về form (trong trƣờng hợp không xác định
phƣơng thức)
Thông tin đƣợc lƣu trong các biến dƣới dạng
mảng kết hợp.
VÍ DỤ - PHƢƠNG THỨC GET
<!--form2get.htm--> <!--form2get.php-->
<html> <html>
<head> <head>
<meta http-equiv="Content-Type" <meta http-equiv="Content-Type"
content="text/html; content="text/html; charset=utf-
charset=utf-8" /> 8" />
<title>Form 2</title> <title>Xu ly form 2</title>
</head> </head>
<body> <body>
<form action="form2get.php" <?php
method="get"> echo "Xin chào " . $_GET["ten"] .
Họ tên: <input name="ten" "<br>";
type="text"> <br> <br> echo "Bạn " . $_GET["tuoi"] . "
Tuổi: <input tuổi."
name="tuoi" type="text"> ?>
<br><br> </body>
<input type="submit" </html>
value="Send">
</form>
</body>
</html>
VÍ DỤ - PHƢƠNG THỨC GET
VÍ DỤ - PHƢƠNG THỨC POST
<!--form2post.htm--> <!--form2post.php-->
<html> <html>
<head> <head>
<meta http-equiv="Content-Type" <meta http-equiv="Content-Type"
content="text/html; content="text/html; charset=utf-
charset=utf-8" /> 8" />
<title>Form 2</title> <title>Xu ly form 2</title>
</head> </head>
<body> <body>
<form action="form2post.php" <?php
method=“post"> echo "Xin chào " . $_POST["ten"] .
Họ tên: <input name="ten" "<br>";
type="text"> <br> <br> echo "Bạn " . $_POST["tuoi"] . "
Tuổi: <input tuổi."
name="tuoi" type="text"> ?>
<br><br> </body>
<input type="submit" </html>
value="Send">
</form>
</body>
</html>
VÍ DỤ - PHƢƠNG THỨC POST
VÍ DỤ - SỬ DỤNG BIẾN REQUEST
<!--form2request.htm--> <!--form2request.php-->
<html> <html>
<head> <head>
<meta http-equiv="Content-Type" <meta http-equiv="Content-Type"
content="text/html; content="text/html; charset=utf-
charset=utf-8" /> 8" />
<title>Form 2</title> <title>Xu ly form 2</title>
</head> </head>
<body> <body>
<form action="form2request.php" <?php
method=“post"> echo "Xin chào " . $_REQUEST["ten"]
Họ tên: <input name="ten" . "<br>";
type="text"> <br> <br> echo "Bạn " . $_REQUEST["tuoi"] . "
Tuổi: <input tuổi."
name="tuoi" type="text"> ?>
<br><br> </body>
<input type="submit" </html>
value="Send">
</form>
</body>
</html>
VÍ DỤ - SỬ DỤNG BIẾN REQUEST
VÍ DỤ - FORM CÓ NHIỀU KIỂU INPUT KHÁC NHAU
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Xu ly form 3</title>
</head>
<body>
<?php
echo "Họ tên: " . $_POST["hoten"] . "<br>";
echo "Giới tính: " . $_POST[“gioitinh"] . "<br>";
echo "Năm sinh: " . $_POST["namsinh"] . "<br>";
echo "Nghe nhạc: " . $_POST["nghenhac"] . "<br>";
echo "Xem phim: " . $_POST["xemphim"] . "<br>";
echo "Đọc sách: " . $_POST["docsach"] . "<br>";
echo "Tự giới thiệu: " . $_POST["gioithieu"] . "<br>";
echo "Mật khẩu: " . $_POST["matkhau"] . "<br>";
?>
</body>
</html>
VÍ DỤ - FORM CÓ NHIỀU KIỂU INPUT KHÁC NHAU
VÍ DỤ - FORM CÓ NHIỀU KIỂU INPUT KHÁC NHAU
KIỂM TRA SỰ THIẾT LẬP BIẾN
<body>
<?php
if (isset($var))
echo "Biến đã được thiết lập";
else
echo "Biến chưa được thiết lập";
$var = 1;
if (isset($var))
echo "Biến đã được thiết lập";
else
echo "Biến chưa được thiết lập";
?>
</body>
</html>
BÀI TẬP 1.
BÀI TẬP 2.
THỜI GIAN TRONG PHP
date(định_dạng, mốc_thời_gian)
định_dạng chỉ ra dạng thức dữ liệu muốn lấy
a – am hoặc pm
…
VÍ DỤ - THỜI GIAN
<html>
<head>
<title>PHP date</title>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8">
</head>
<body>
<?php
echo "Today is " . date("l") . ", " . date("F") . " " .
date("d") . " " . date("Y") . "<br>";
echo "Time: " . date("h") . ":" . date("i") . ":" .
date("s") . " " . date("a") . "<br>";
?>
</body>
</html>
INCLUDE FILE
Chèn nội dung của 1 file vào các file khác tại vị
trí gọi hàm.
Sử dụng lại những đoạn mã chƣơng trình có tính
lặp lại trong nhiều trang ví dụ nhƣ header, footer,
menu…
Sử dụng hàm include() hoặc hàm require() với
tham số là file cần chèn.
INCLUDE() VÀ REQUIRE()
Mục đích đều là chèn nội dung của một file nào
đó vào các file khác tại vị trí gọi hàm.
Nếu có lỗi, hàm include() tạo ra thông báo, các
kịch bản PHP phía sau hàm tiếp tục đƣợc thực
hiện.
Nếu có lỗi hàm require() tạo ra thông báo và các
kịch bản PHP phía sau hàm không đƣợc thực
hiện.
VÍ DỤ - INCLUDE
<html> <?php
<head> include("header.php");
<meta http-equiv="Content-Type" ?>
content="text/html; charset=utf-
8" /> <br>
<title>Include File</title> <h2>Đây là trang chủ</h2>
</head> </body>
<body> </html>
<a href="home.php">Home</a>
<a href="contact.php">Contact</a>
<a href="about.php">About</a>
<?php
include("header.php");
?>
<br>
<h2>Giới thiệu</h2>
</body>
</html>
VÍ DỤ - INCLUDE VÀ REQUIRE
<?php <?php
include("head.php"); require("head.php");
?> ?>
<br> <br>
<h2>Đây là trang chủ</h2> <h2>Đây là trang chủ</h2>
</body> </body>
</html> </html>
COOKIE
Cú pháp
$_COOKIE[tên_cookie]
Để kiểm tra xem cookie có tồn tại hay không, sử
dụng hàm isset
Ví dụ: isset($_COOKIE[“user”])
XÓA COOKIE
<body>
<a href="session.php">Test Session</a>
</body>
</html>
VÍ DỤ - SESSION
<?php
session_start();
?>
<html>
<head>
<title>Test Session</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<?php
if (isset($_SESSION["status"]) && ($_SESSION["status"]=="login"))
echo "Abc";
else
echo "Đăng nhập để xem nội dung";
?>
</body>
</html>
TỰ ĐỌC
PHP File
PHP File Upload
PHP Mail
PHP Math
…
BÀI TẬP
Tạo website bao gồm 2 trang index.php và
content.php.
Trang index.php
Nếu chƣa đăng nhập thì tạo form đăng nhập (gồm
username và password)
Nếu đăng nhập rồi thì có link cho phép thoát và link đến
trang content.php
Trang content.php
Nếu đăng nhập thì hiện nội dung nào đó
Nếu chƣa đăng nhập thì thông báo