PHP web
NGÔN NGỮ PHP
Giảng viên: Lê Bá Vui
Viện CNTT-TT - ĐH Bách Khoa Hà Nội
NỘI DUNG BÀI GIẢNG
Tổng quan về ứng dụng web
Lập trình web với PHP
Kết nối cơ sở dữ liệu MySQL bằng PHP
NỘI DUNG BÀI GIẢNG
Tổng quan về ứng dụng web
Lập trình web với PHP
Kết nối cơ sở dữ liệu MySQL bằng PHP
TỔNG QUAN VỀ ỨNG DỤNG WEB
Các ứng dụng web chạy trên môi trƣờng web
theo mô hình client / server.
Môi trƣờng web bao gồm các web server và
các trình duyệt (client) đƣợc kết nối với nhau
GIAO TIẾP GIỮA CLIENT VÀ SERVER
Server chờ và nhận các yêu cầu từ các client.
Server xử lý yêu cầu tƣơng ứng rồi gửi kết quả
đến các client.
Client hiển thị kết quả trả về tùy chƣơng trình
ứng dụng.
WEB SERVER
Là các server đƣợc cài
phần mềm web server.
Có nhiệm vụ chờ các yêu cầu, xử lý yêu cầu và gửi kết quả.
Các phần mềm web server thông dụng hiện nay
IIS
Apache
WEB CLIENT
Là các trình duyệt
Gửi yêu cầu đến server
Hiển thị kết quả trả về
CÁC CÔNG NGHỆ WEB ĐỘNG
Cho phép tƣơng tác với ngƣời sử dụng.
Kết nối với các hệ CSDL nhằm lƣu trữ, khai thác thông tin hiệu quả.
Kết nối với các hệ thống tài nguyên khác nhƣ âm thanh, hình ảnh, video ...
Một số công nghệ web động đang đƣợc sử dụng hiện nay
PHP ASP
.NET
JSP
NỘI DUNG BÀI GIẢNG
Tổng quan về ứng dụng web
Lập trình web với PHP
Kết nối cơ sở dữ liệu MySQL bằng PHP
GIỚI THIỆU NGÔN NGỮ PHP
PHP là ngôn ngữ kịch bản phía server
Các kịch bản (lệnh) PHP đƣợc thực hiện trên
server trƣớc khi trả về cho trình duyệt
PHP hỗ trợ nhiều hệ CSDL nhƣ MySQL, Oracle, Infomix, Sybase ...
TẠI SAO LÀ PHP
PHP chạy trên nhiều hệ điều hành khác nhau nhƣ
Windows, UNIX, Linux, Symbian, ...
Tƣơng thích với các phần mềm web server nhƣ
Apache, IIS, ...
Là phần mềm mã nguồn mở, đƣợc cung cấp miễn
phí.
CÀI ĐẶT WEB SERVER
Cài đặt web server Apache
Cài đặt PHP
Cài đặt MySQL
=> Cài đặt XAMPP
CẤU HÌNH WEB SERVER
Sử dụng công cụ cấu
hình sẵn có của XAMPP
Cho phép bật tắt và cấu
hình chi tiết các dịch vụ
Nội dung của các trang web đƣợc lƣu vào thƣ mục htdocs trong thƣ mục cài đặt xampp
SẴN SÀNG LẬP TRÌNH WEB
SO SÁNH PHP VÀ JAVASCRIPT
PHP là ngôn ngữ kịch bản phía server
JavaScript là ngôn ngữ kịch bản phía client.
Kịch bản PHP đƣợc thực hiện trên server. Một yêu cầu PHP luôn trả về client dƣới dạng HTML thuần túy.
Kịch bản JavaScript đƣợc thực hiện trên client. Mã nguồn JavaScipt đƣợc đƣa về client rồi mới thực hiện.
CÚ PHÁP PHP CƠ BẢN
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!"; ?>
Đoạn này viết bằng HTML. </body> </html>
BIẾN TRONG PHP
Biến luôn luôn đi sau ký tự $
Đặt tên biến theo quy tắc đặt tên giống nhƣ các
ngôn ngữ khác.
Không cần phải khai báo
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 "
";
echo $y;
echo "
";
echo $s;
echo "
";
?>
</body>
</html>
KIỂU XÂU KÝ TỰ
Luôn đặt trong dấu "" hoặc dấu „‟
Hiển thị một chuỗi, một số, ... dùng lệnh echo
hoặc lệnh print của PHP
Ghép các chuỗi với nhau sử dụng ký tự .
Một số hàm xử lý chuỗi
strlen() độ dài chuỗi
strpos() tìm vị trí của chuỗi con.
GIÁ TRỊ CỦA BIẾN TRONG CHUỖI
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 . "
";
echo "Độ dài chuỗi ký tự: " . strlen($s). "
";
echo "Nội dung: $s";
?>
</body>
</html>
CÁC TOÁN TỬ - SỐ HỌC
Phép toán Ý nghĩa
+ cộng
- trừ
* nhân
/ chia
% lấy phần dư
++ tăng
-- giảm
CÁC TOÁN TỬ - GÁN
Phép toán Ý nghĩa
= 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
Phép toán Ý nghĩa
== 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
Phép toán Ý nghĩa
&& 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>
<head>
<title>Switch Statement</title>
</head>
<body> <?php switch ($x)
{
case 1:
echo "Number 1";
break;
case 2:
echo "Number 2";
break;
case 3:
echo "Number 3";
break;
default:
echo "No number between 1 and 3";
}
?>
</body>
</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] . "
"; 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
"; } ?> </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
Tƣơng tự nhƣ trong JavaScript
Khai báo
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>
<title>Function</title>
</head>
<body>
<?php
function add($x, $y)
{
echo add(1,4);
?>
</body>
</html>
$z = $x + $y;
return $z;
}
BÀI TẬP
Làm một số bài tập JavaScript bằng PHP.
XỬ LÝ THÔNG TIN TỪ FORM
Form có tác dụng thu thập dữ liệu từ ngƣời sử dụng trên trình duyệt, sau đó đƣợc chuyển đến server.
Thông thƣờng ngƣời sử dụng nhập các thông tin vào form sau đó nhấn vào nút submit để chuyển các thông tin đó đến server
THUỘC TÍNH ACTION
Là một thuộc tính của thẻ <form> </form>
Cho biết file kịch bản nào sẽ đƣợc tự động thực
hiện khi thông tin chuyển đến server.
File kịch bản đó có nhiệm vụ xử lý thông tin
đƣợc chuyển đến.
(chỉ xét file PHP)
THUỘC TÍNH METHOD
Xác định phƣơng thức để truyền thông tin
Gồm 2 phƣơng thức
GET
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>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Form 1</title>
</head>
<body>
<form action="form1.php" method="get"> Tên của Tôi: <input name="Ten" type="text"><input name="Ho" type="text">
Giới tính: <input type="radio" name="GioiTinh" value="nam"> Nam
<input type="radio" name="GioiTinh" value="nu"> Nữ
Sở thích:
<input type="checkbox" name="SoThich" value="docsach"> Đọc sách
<input type="checkbox" name="SoThich" value="nghenhac"> Nghe nhạc
<input type="checkbox" name="SoThich" value="xemphim"> Xem phim
Tôi ở tại
<select name="NoiO">
<option value="vietnam">Việt Nam</option>
<option value="lao">Lào</option>
<option value="campuchia">Cam Pu Chia</option>
</select>
<input type="submit" value="Send">
</form>
</body>
</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>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Form 2</title>
</head>
<body>
<form action="form1.php" method="post"> Tên của Tôi: <input name="Ten" type="text"><input name="Ho" type="text">
Giới tính: <input type="radio" name="GioiTinh" value="nam"> Nam
<input type="radio" name="GioiTinh" value="nu"> Nữ
Sở thích:
<input type="checkbox" name="SoThich" value="docsach"> Đọc sách
<input type="checkbox" name="SoThich" value="nghenhac"> Nghe nhạc
<input type="checkbox" name="SoThich" value="xemphim"> Xem phim
Tôi ở tại
<select name="NoiO">
<option value="vietnam">Việt Nam</option>
<option value="lao">Lào</option>
<option value="campuchia">Cam Pu Chia</option>
</select>
<input type="submit" value="Send">
</form>
</body>
</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--> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Form 2</title> </head> <body> <form action="form2get.php" method="get"> Họ tên: <input name="ten" type="text">
Tuổi: <input name="tuoi" type="text">
<input type="submit" value="Send"> </form> </body> </html>
<!--form2get.php--> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf- 8" /> <title>Xu ly form 2</title> </head> <body> <?php echo "Xin chào " . $_GET["ten"] . "
"; echo "Bạn " . $_GET["tuoi"] . " tuổi." ?> </body> </html>
VÍ DỤ - PHƢƠNG THỨC GET
VÍ DỤ - PHƢƠNG THỨC POST
<!--form2post.htm--> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Form 2</title> </head> <body> <form action="form2post.php" method="post"> Họ tên: <input name="ten" type="text">
Tuổi: <input name="tuoi" type="text">
<input type="submit" value="Send"> </form> </body> </html>
<!--form2post.php--> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf- 8" /> <title>Xu ly form 2</title> </head> <body> <?php echo "Xin chào " . $_POST["ten"] . "
"; echo "Bạn " . $_POST["tuoi"] . " tuổi." ?> </body> </html>
VÍ DỤ - PHƢƠNG THỨC POST
VÍ DỤ - SỬ DỤNG BIẾN REQUEST
<!--form2request.htm--> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Form 2</title> </head> <body> <form action="form2request.php" method="post"> Họ tên: <input name="ten" type="text">
Tuổi: <input name="tuoi" type="text">
<input type="submit" value="Send"> </form> </body> </html>
<!--form2request.php--> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf- 8" /> <title>Xu ly form 2</title> </head> <body> <?php echo "Xin chào " . $_REQUEST["ten"] . "
"; echo "Bạn " . $_REQUEST["tuoi"] . " tuổi." ?> </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>Form 3</title></head> <body> <form action="form3.php" method="post"> <table width="80%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td>Họ tên</td> <td><input type="text" name="hoten"></td> </tr> <tr><td>Giới tính</td> <td>
<label> <input type="radio" name="gioitinh" value="nam"> Nam</label> <label> <input type="radio" name="gioitinh" value="nu"> Nữ</label>
</td> </tr> <tr><td>Năm sinh</td> <td><select name="namsinh"> <script language="JavaScript"> for (i = 1900; i < 2008; i++) document.write("<option value='" + i + "'>" + i + "</option>"); </script> </select></td> </tr> <tr> <td>Sở thích</td>
<td><input type="checkbox" name="nghenhac" value="nghenhac"> Nghe nhạc <input type="checkbox" name="xemphim" value="xemphim"> Xem phim <input type="checkbox" name="docsach" value="docsach"> Đọc sách</td> </tr> <tr> <td>Tự giới thiệu</td><td><textarea name="gioithieu"></textarea></td> </tr> <tr> <td>Mật khẩu</td> <td><input type="password" name="matkhau"></td> </tr> <tr> <td> </td> <td> </td> </tr> <tr> <td><input type="submit" name="Submit" value="Gửi thông tin"></td> <td><input type="reset" name="Reset" value="Nhập lại"></td> </tr> </table> </form> </body> </html>
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"] . "
"; echo "Giới tính: " . $_POST["hoten"] . "
"; echo "Năm sinh: " . $_POST["namsinh"] . "
"; echo "Nghe nhạc: " . $_POST["nghenhac"] . "
"; echo "Xem phim: " . $_POST["xemphim"] . "
"; echo "Đọc sách: " . $_POST["docsach"] . "
"; echo "Tự giới thiệu: " . $_POST["gioithieu"] . "
"; echo "Mật khẩu: " . $_POST["matkhau"] . "
";
?>
</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
Để kiểm tra xem một biến đã đƣợc thiết lập hay
chƣa.
Sử dụng hàm isset(tên_biến);
Có giá trị true nếu biến đã đƣợc thiết lập
Có giá trị false nếu biến đã đƣợc thiết lập
VÍ DỤ - HÀM ISSET()
<html> <head> <title>PHP String</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head>
<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
PHP sử dụng hàm date() để định dạng thời gian dƣới các dạng khác nhau: thứ, ngày, tháng, năm, giờ, phút, giây.
Cú pháp
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
mốc_thời_gian để lấy dữ liệu, nếu để trống thì
mặc định là mốc thời gian hiện tại
THỜI GIAN TRONG PHP
Mốc thời gian là khoảng thời gian đƣợc tính bằng giây từ thời điểm 00:00:00 giờ GMT ngày 1/1/1970.
Các định dạng ngày tháng
d - ngày (01 - 31) m - tháng (01 - 12) M - tháng (gồm 3 ký tự đầu) F - tên tháng Y - năm (gồm 4 chữ số) l - thứ trong tuần (ký tự) z - ngày trong năm (0 - 365) ...
THỜI GIAN TRONG PHP
Các định dạng thời gian
h - giờ (01 - 12)
H - giờ (00 - 23)
i - phút (00 - 59)
s - giây (00 - 59)
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") . "
"; echo "Time: " . date("h") . ":" . date("i") . ":" . date("s") . " " . date("a") . "
"; ?> </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> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf- 8" /> <title>Include File</title> </head> <body> <a href="home.php">Home</a> <a href="contact.php">Contact</a> <a href="about.php">About</a>
<?php
include("header.php");
?>
<h2>Đây là trang chủ</h2>
</body>
</html>
<?php
include("header.php");
?>
<h2>Giới thiệu</h2>
</body>
</html>
VÍ DỤ - INCLUDE VÀ REQUIRE
<?php include("head.php");
?>
<h2>Đây là trang chủ</h2>
</body>
</html>
<?php require("head.php");
?>
<h2>Đây là trang chủ</h2>
</body>
</html>
COOKIE
Đƣợc dùng để phân biệt ngƣời sử dụng.
Là một file chứa thông tin đƣợc server đặt trên
máy của ngƣời sử dụng (client).
Mỗi khi client gửi yêu cầu tới server, thông tin cookie trên client cũng đồng thời đƣợc gửi.
TẠO COOKIE
Sử dụng hàm setcookie()
Cú pháp
setcookie(name, value, expire);
name - tên của cookie value - giá trị cookie expire - thời điểm cookie hết hạn sử dụng Hàm setcookie() phải đặt trước thẻ <html>
Ví dụ setcookie("user", "hello", time() + 60);
Tạo cookie có tên là user với giá trị là hello, cookie tồn tại trong 60s tính từ thời điểm hiện tại
ĐỌC GIÁ TRỊ COOKIE
Trong PHP, sử dụng biến $_COOKIE để đọc giá
trị các cookie
Các cookie đƣợc lƣu dƣới dạng mảng kết hợp
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
Để xóa cookie, sử dụng hàm setcookie() với thời điểm trong quá khứ
Ví dụ
setcookie("user", "", time() - 60);
VÍ DỤ - COOKIE
<?php // ccreate.php setcookie("user", "Hello", time() + 3600); ?>
<!-- cread.php --> <html> <head> <title>Read Cookie</title> </head> <body> <?php if (isset($_COOKIE["user"])) echo "Welcome " . $_COOKIE["user"] . "!";
else
?>
echo "Welcome Guest!";
</body> </html>
SESSION - PHIÊN
Session đƣợc dùng để lƣu thông tin về ngƣời sử dụng trong quá trình truy nhập một ứng dụng web nào đó; ví dụ: forum, website mua bán trực tuyến,...
Session đƣợc bắt đầu từ khi ngƣời sử dụng truy nhập ứng dụng (nhập địa chỉ), kết thúc khi thoát khỏi ứng dụng (đóng cửa sổ)
Session tồn tại đối với tất cả các trang của cùng một ứng dụng
KHỞI TẠO SESSION
Khi sử dụng session bắt buộc khởi tạo đối với tất cả các trang muốn truy nhập thông tin trong session
Cú pháp
session_start()
Chú ý: hàm session_start() phải đƣợc đặt trƣớc thẻ <html> <?php session_start(); ?> <html>
... </html>
TRUY NHẬP NỘI DUNG SESSION
Thông tin trong session đƣợc lƣu trong biến
$_SESSION dƣới dạng mảng kết hợp.
Đọc ghi session thông qua biến $_SESSION
Kết hợp với hàm isset() để kiểm tra 1 thông tin session nào đó đƣợc thiết lập hay chƣa.
XÓA THÔNG TIN TRONG SESSION
Để xóa 1 thông tin nào đó trong session sử dụng
hàm unset()
Ví dụ
unset($_SESSION["username"]);
Để xóa toàn bộ nội dung session, sử dụng hàm
session_destroy()
VÍ DỤ - SESSION - SLOGIN.PHP
<?php session_start(); // Xu ly thong tin dang nhap $_SESSION["status"] = "login"; ?> <html> <head> <title>Login</title> </head>
<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
Bạn đang đọc truyện trên: Truyen247.Pro