CƠNG NGHỆ WEB VÀ ỨNG DỤNG
Giảng viên phụ trách:
Nguyễn Hồng Tùng
Bộ môn Tin học
Email:
Thông tin chung
Tên môn học: Công nghệ Web và Ứng dụng.
Mã mơn học: CON910.
Số tín chỉ: 3 (45 tiết)
Lý thuyết: 25 tiết
Thực hành: 40 tiết
Đối tượng: Sinh viên chuyên ngành Tin học năm 4.
20/08/2012
Công nghệ Web và Ứng dụng
2
Điều kiện cần để học môn này
Đã học các môn sau:
Lập trình Web (CON501).
Cơ sở dữ liệu.
Hệ quản trị CSDL.
Phân tích thiết kế HTTT.
20/08/2012
Cơng nghệ Web và Ứng dụng
3
Mô tả vắn tắt nội dung học phần
Học phần cung cấp các kiến thức về lập trình web với PHP từ
cơ bản đến nâng cao. Phần cuối cùng hướng dẫn sinh viên xây
dựng một ứng dụng web động bằng PHP.
20/08/2012
Công nghệ Web và Ứng dụng
4
Nội dung học phần
Phần 01: Các hàm thường dùng trong PHP (Ơn lại kiến thức)
Phần 02: Lập trình hướng đối tượng trong PHP
Phần 03: Xây dựng ứng dụng PHP theo mơ hình 3-Tiers
Phần 04: Một số thành phần bổ trợ trong Web
Phần 05: Giới thiệu ASP.NET MVC 4 (Phần mở rộng)
20/08/2012
Công nghệ Web và Ứng dụng
5
Tiêu chuẩn đánh giá sinh viên
Dự lớp: Đầy đủ theo quy chế (điểm danh đột xuất).
Đánh giá:
Tiểu luận ASP.NET MVC (30% - Có báo cáo nhóm).
Đồ án mơn học theo nhóm (70% - Có báo cáo nhóm).
Đánh giá theo thang điểm 10 sau đó quy về thang 4.
20/08/2012
Cơng nghệ Web và Ứng dụng
6
Tài liệu học tập
Slide bài giảng,
Phạm Hữu Khang, Hoàng Đức Hải, Xây Dựng Ứng Dụng
Web Bằng PHP Và MySQL, NXB Phương Đông,
Steven Holzner, Thiết Kế Web Động Với PHP 5 (Tái Bản
Lần 3), Gia Việt biên dịch, NXB Thống Kê,
Trang web: www.w3schools.com/php/default.asp.
20/08/2012
Công nghệ Web và Ứng dụng
7
Thơng tin giảng viên
Nguyễn Hồng Tùng
Bộ mơn Tin học – Khoa KTCNMT – ĐH An Giang.
DĐ: 0975.058.876
Email: ,
Trang web: .
Địa điểm làm việc: Phịng ND210, Khu trung tâm.
20/08/2012
Cơng nghệ Web và Ứng dụng
8
Giải đáp thắc mắc về môn học
20/08/2012
Công nghệ Web và Ứng dụng
9
CÁC HÀM PHP THƯỜNG DÙNG
Giảng viên phụ trách:
Nguyễn Hoàng Tùng
Bộ môn Tin học
Email:
Nội dung chính của slide này
Các hàm về chuỗi
Các hàm bảo mật trong chuỗi
Hàm ngày, giờ
Các hàm về mảng
Upload file lên server
20/08/2012
Công nghệ Web và Ứng dụng
2
Chuỗi ký tự
Khai báo biến:
$str = "chuỗi ký tự";
Các hàm về kiểu chuỗi ký tự: (chỉ nêu tên)
ltrim(), rtrim(), trim(): Xóa khoảng trắng bên trái, phải, cả 2.
nl2br(): Định dạng HTML, biến ký tự “\n” thành “
”.
addslashes(): Biến một chuỗi có thể lưu trữ trong CSDL.
substr(): Tách một chuỗi con từ một chuỗi.
strpos(): Xác định vị trí xuất hiện của chuỗi trong một chuỗi.
str_replace(): Thay thế chuỗi.
explode(): Tách chuỗi thành các chuỗi con.
implode(): Ngược lại với hàm explode(), dùng để ghép chuỗi.
20/08/2012
Công nghệ Web và Ứng dụng
3
Chuỗi ký tự
Ví dụ về chuỗi:
$str = "Xồi, Mận, Bưởi, Sầu riêng";
$arr = array(); //Mảng động
$arr = explode(", ",$str);
echo "
Danh sách trái cây:
";
foreach($arr as $key=>$value)
echo($key + 1)." - ".$value."
";
?>
20/08/2012
Công nghệ Web và Ứng dụng
4
Nội dung chính của slide này
Các hàm về chuỗi
Các hàm bảo mật trong chuỗi
Hàm ngày, giờ
Các hàm về mảng
Upload file lên server
20/08/2012
Công nghệ Web và Ứng dụng
5
Các hàm bảo mật trong chuỗi
string addslashes(string $str)
string stripslashes(string $str)
string htmlspecialchars(string $str [, int $quote_style [, string $charset]])
string md5(string $str [, bool $raw_output])
string sha1(string $str [, bool $raw_output])
20/08/2012
Công nghệ Web và Ứng dụng
6
Các hàm bảo mật trong chuỗi
string addslashes(string $str)
Thêm ký tự backslash (\) phía trước các ký tự ‘ " \ NUL
trong chuỗi $str Thường dùng trong các câu lệnh SQL để
tránh xảy ra lỗi khi lưu và lấy dữ liệu từ CSDL.
Các hàm tương tự:
string quotemeta(string $str)
string addcslashes(string $str, string $charlist)
VD:
$str = "I'dont know \'every thing\'";
echo addslashes($str);
//Output: I\'dont know \\\'every thing\\\'
?>
20/08/2012
Công nghệ Web và Ứng dụng
7
Các hàm bảo mật trong chuỗi
string stripslashes(string $str)
Xóa bỏ ký tự backslash (\) xuất hiện trong chuỗi $str (ngược
lại với hàm addslashes()).
Hàm tương tự:
string stripcslashes(string $str)
VD:
$str = "I\'dont know \\\'every thing\\\'";
echo stripslashes($str);
//Output: I'dont know \'every thing\'
?>
20/08/2012
Công nghệ Web và Ứng dụng
8
Các hàm bảo mật trong chuỗi
string htmlspecialchars(string $str [, int $quote_style [, string $charset]])
Chuyển đổi các ký tự đặc biệt & ' " < > trong chuỗi $str
thành các thực thể HTML (Convert special characters to
HTML entities).
Khi đó:
&
&
"
" // khi khơng có ENT_NOQUOTES.
'
' // khi có ENT_QUOTES.
<
<
>
>
Ngược lại: htmlspecialchars_decode
20/08/2012
Công nghệ Web và Ứng dụng
9
Các hàm bảo mật trong chuỗi
string md5(string $str [, bool $raw_output])
MD5: Message Digest 5 là một hàm băm mật mã được sử
dụng phổ biến với giá trị băm dài 128 bit.
Thường dùng để mã hóa mật khẩu, kiểm tra tính tồn vẹn
của tập tin,…
VD:
$str = 'Lớp DH8TH';
echo md5($str);
//Output: 39a03156031b6a3ecf5dc5279ab3a77c
?>
20/08/2012
Cơng nghệ Web và Ứng dụng
10
Các hàm bảo mật trong chuỗi
string sha1(string $str [, bool $raw_output])
Thuật toán SHA-1 (Secure Hash Algorithm 1) tạo ra chuỗi
mã băm có chiều dài cố định 160 bit từ chuỗi bit dữ liệu đầu
vào $str có chiều dài tùy ý.
Được sử dụng phổ biến và có cơng dụng như MD5, ngồi ra
SHA-1 cịn được sử dụng rất nhiều trong thương mại điện
tử, tạo chữ ký số,…
VD:
$str = 'Lớp DH8TH';
echo sha1($str);
//Output: a6fc5d0530e75a5288e4ff27b284741945677158
?>
20/08/2012
Công nghệ Web và Ứng dụng
11
Nội dung chính của slide này
Các hàm về chuỗi
Các hàm bảo mật trong chuỗi
Hàm ngày, giờ
Các hàm về mảng
Upload file lên server
20/08/2012
Công nghệ Web và Ứng dụng
12
Các hàm về thời gian
string date(string $format [, int $timestamp])
array getdate([int $timestamp])
bool checkdate(int $month, int $day, int $year)
int time(void)
20/08/2012
Công nghệ Web và Ứng dụng
13
Các hàm về thời gian
string date(string $format [, int $timestamp])
Trả về thời gian hiện tại theo định dạng $format.
Ví dụ:
$today
$today
$today
$today
$today
$today
$today
?>
=
=
=
=
=
=
=
date("F j, Y, g:i a"); //January 10, 2011, 1:48 am
date("d.m.y");
//10.01.11
date("j/n/Y");
//10/1/2011
date("dmY");
//10012011
date("h-i-s, j-m-y"); //01-48-26, 10-01-11
date("D M j G:i:s Y"); //Mon Jan 10 1:48:26 2011
date("H:i:s");
//01:48:26
Xem chi tiết các cú pháp định dạng trong PHP Manual.
20/08/2012
Công nghệ Web và Ứng dụng
14
Các hàm về thời gian
array getdate([int $timestamp])
Trả về một array thông tin về thời gian hiện tại.
Array(
[seconds]
[minutes]
[hours]
[mday]
[wday]
[mon]
[year]
[yday]
[weekday]
[month]
[0]
)
=>
=>
=>
=>
=>
=>
=>
=>
=>
=>
=>
41
2
2
10
1
1
2011
9
Monday
January
1294599761
<? $now = getdate(); echo $now['year'] //Output: 2011 ?>
20/08/2012
Công nghệ Web và Ứng dụng
15
Các hàm về thời gian
bool checkdate(int $month, int $day, int $year)
Kiểm tra ngày, tháng, năm đưa vào có hợp lệ hay không?
var_dump(checkdate(2, 29,2011)); //False
var_dump(checkdate(4, 18,1986)); //True
?>
Giới hạn của tham số:
Tháng ($month) từ 1 đến 12,
Ngày ($day) từ 1 đến 31, phụ thuộc theo tháng,
Năm ($year) từ 1 đến 32767.
20/08/2012
Công nghệ Web và Ứng dụng
16