Khái niệm cookie• Là nh ững mẩu thông tin nhỏ được lưu trên máy của người sử dụng thường dùng để lưu trữ thông tin về người sử dụng.. • Kh ả năng tạo cookie phụ thuộc vào trình duyệt
Trang 1Đạ i H ọ c S ư Ph ạ m Tp H ồ Chí Minh
Đạ i H ọ c S ư Ph ạ m Tp H ồ Chí Minh
LẬP TRÌNH WEB PHP
Ch ươ ng 03: PHP nâng cao
Trang 2Nội dung
1 Truy ề n, nh ậ n d ữ li ệ u
2 Cookies
3 Session
4 Upload File
2
4 Upload File
5 Image
Trang 31 Truyền, Nhận dữ liệu
•• Trang Trang web web nh nh ậ ậ p p d d ữ ữ li li ệ ệ u u
– Cách 1 : truy ề n d ữ li ệ u tr ự c ti ế p qua url
• S ử d ụ ng liên k ế t để s ử a l ạ i url
• Thông qua đố i t ượ ng location
– Cách 2 : truy ề n d ữ li ệ u thông qua form
• S ử d ụ ng đố i t ượ ng < form >
• S ử d ụ ng đố i t ượ ng < form >
• Nh ậ p li ệ u thông qua các formfield
• Th ự c hi ệ n vi ệ c truy ề n d ữ li ệ u thông qua submit
• Hai ph ươ ng th ứ c g ở i d ữ li ệ u GET / POST
•• Trang Trang web web nh nh ậ ậ n n d d ữ ữ li li ệ ệ u u (dùng các bi ế n toàn c ụ c)
– Cách 1 : $_GET [“ bi bi ế ế n n ”]
– Cách 2 : $_POST [“ bi bi ế ế n n ”]
– Cách 3 : $_REQUEST [“ bi bi ế ế n n ”]
Trang 42 Khái niệm cookie
• Là nh ững mẩu thông tin nhỏ được lưu trên máy
của người sử dụng thường dùng để lưu trữ
thông tin về người sử dụng.
• Kh ả năng tạo cookie phụ thuộc vào trình duyệt
và sự cho phép của người sử dụng.
4
và sự cho phép của người sử dụng.
• Trong IE, để xem các cookies đã được tạo thì
vào: Tools/Internet Options/Setting…/View Files
Trang 52 Thiết lập cookie
– Tên: Tên cookie đượ c t ạ o ra
– giá_tr ị : giá tr ị đượ c đặ t cho cookie
– t: S ố : th ờ i gian h ế t h ạ n c ủ a cookie
• Chú ý:
• Chú ý:
– L ệ nh setcookie ph ả i đượ c g ọ i tr ướ c khi g ử i b ấ t c ứ
n ộ i dung gì v ề client (Tr ướ c các th ẻ HTML, tr ướ c echo, print)
– Để thi ế t l ậ p th ờ i gian h ế t h ạ n c ủ a cookie th ườ ng s ử
d ụ ng hàm
time ()+kho ả ng th ờ i gian (tính b ằ ng giây)
Trang 6Đọc cookie
• S ử d ụ ng m ả ng $_COOKIE v ớ i ch ỉ các s ố là tên các cookie.
• Chú ý:
– Ta không th ể đọc cookie vừa được thiết lập
ngay trong trong cùng 1 trang vừa thiết lập
6
ngay trong trong cùng 1 trang vừa thiết lập gọi setcookie
Trang 73 Sử dụng SESSION
• Để s ử d ụ ng session, c ầ n khai báo:
session_start(); ngay đầ u trang PHP.
• Khai báo bi ế n session:
$_SESSION[‘tên_bi ế n’] = tr ị ;
• H ủ y b ỏ m ộ t bi ế n session:
unset($_SESSION[‘tên_bi ế n’]);
• H ủ y toàn b ộ các bi ế n session:
session_destroy();
Trang 8Ví dụ: Kiểm tra đăng nhập dùng Session Kiểm tra đăng nhập dùng Session
8
Trang 9Ví dụ: Kiểm tra đăng nhập dùng Kiểm tra đăng nhập dùng
Session
Trang 103 SESSION
<?php
// page1.php
session_start ();
echo 'Welcome to page #1';
$_SESSION ['favcolor'] = 'green';
$_SESSION ['animal'] = 'cat';
$_SESSION ['time'] = time ();
// Works if session cookie was accepted
echo '<br /><a href="page2.php">page 2</a>';
10
echo '<br /><a href="page2.php">page 2</a>';
// Or maybe pass along the session id, if needed
echo '<br /><a href="page2.php?' SID '">page 2</a>';
?>
<?php
// page2.php
session_start ();
echo 'Welcome to page #2<br />';
echo $_SESSION ['favcolor']; // green
echo $_SESSION ['animal']; // cat
echo date ('Y m d H:i:s', $_SESSION ['time']);
// You may want to use SID here, like we did in page1.php
echo '<br /><a href="page1.php">page 1</a>';
?>
Trang 114 Upload tập tin lên server
• G ử i các file lên server (upload) là m ộ t ch ứ c n ă ng
không th ể thi ế u đố i v ớ i các ứ ng d ụ ng Web-based
• Để form có th ể upload file, ta ph ả i xác đị nh thu ộ c
tính enctype c ủ a form có giá tr ị " multipart/form
multipart/form tính enctype c ủ a form có giá tr ị " multipart/form
multipart/form data ”
• V ớ i PHP, b ạ n có th ể xác đị nh kích th ướ c l ớ n nh ấ t
c ủ a file upload b ằ ng cách đặ t thêm 1 hidden field
có tên MAX_FILE_SIZE tr ướ c control file
Trang 124 Upload tập tin lên server
Element Contains Example
$ FILES[' taptin ']['name'] Name of uploaded file test.gif
$_FILES[' taptin ']['tmp_name'] Path to temporary file /tmp/phprDfZvN
12
$_FILES[' taptin ']['tmp_name'] Path to temporary file /tmp/phprDfZvN
$_FILES[' taptin ']['size'] Size (in bytes) of uploaded file 6835
$_FILES[' taptin ']['error'] An error code corresponding
to a PHP constant
UPLOAD_ERR_FO RM_SIZE
$_FILES[' taptin ']['type'] MIME type of uploaded file
(where given by client)
image/gif
Trang 13Constant Name Value Explanation
UPLOAD_ERR_OK 0 No problem
4 Upload tập tin lên server
Mã l ỗ i
Mã l ỗ i
UPLOAD_ERR_INI_SIZE 1 File size exceeds php.ini limit set in
upload_max_filesize UPLOAD_ERR_FORM_SIZE 2 File size exceeds limit set in hidden
element named MAX_FILE_SIZE UPLOAD_ERR_PARTIAL 3 File only partially uploaded
UPLOAD_ERR_NO_FILE 4 File was not uploaded
Trang 144 Upload tập tin lên server
14
Trang 154 Upload tập tin lên server
4 Upload tập tin lên server
Trang 165 Vẽ image
16
V ẽ ả nh t ừ v ă n b ả n
V ẽ ả nh t ừ v ă n b ả n
Trang 176 Date
Trang 186 Date
18
<?php
// Assuming today is: March 10th, 2001, 5:16:18 pm
// 05-16-17, 10-03-01, 1631 1618 6 Fripm01
?>
Trang 19Câu hỏi và thảo luận