Giáo trình PHP và MySQL - Ngành/nghề: Thiết kế trang web

ỦY BAN NHÂN DÂN TỈNH LÂM ĐỒNG  
TRƢỜNG CAO ĐẲNG NGHỀ ĐÀ LẠT  
GIÁO TRÌNH  
MÔN HỌC/ MÔ ĐUN: PHP và MySQL  
NGÀNH/ NGHỀ: THIẾT KẾ TRANG WEB  
TRÌNH ĐỘ: CAO ĐẲNG  
Ban hành kèm theo Quyết định số: 1157/QĐ-CĐNĐL ngày 11 tháng 12 năm  
2019 của Hiệu trưởng Trường Cao đẳng Nghề Đà Lạt  
(LƢU HÀNH NỘI BỘ)  
Lâm Đồng, năm 2019  
TUYÊN BỐ BẢN QUYỀN  
Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể được phép  
dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo.  
Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh  
thiếu lành mạnh sẽ bị nghiêm cấm.  
Giáo trình được lưu hành nội bộ Trường Cao đẳng Nghề Đà Lạt.  
Trang 1  
LỜI GIỚI THIỆU  
Vài nét về xuất xứ giáo trình:  
Giáo trình này được viết theo căn cứ Thông tư số 03/2017/TT-BLĐTBXH ngày  
01 tháng 03 năm 2017 của Bộ Lao động – Thương binh và Xã hội về việc Quy định về  
quy trình xây dựng, thẩm định và ban hành chương trình; tổ chức biên soạn, lựa chọn,  
thẩm định giáo trình đào tạo trình độ trung cấp, trình độ cao đẳng.  
Quá trình biên soạn:  
Giáo trình này được biên soạn có sự tham gia tích cực của các giáo viên có kinh  
nghiệm, cùng với những ý kiến đóng góp quý báu của các chuyên gia về lĩnh vực công  
nghệ thông tin.  
Mối quan hệ của tài liệu với chương trình, mô đun/môn học:  
Căn cứ vào chương trình đào tạo nghề Thiết kế trang web, giáo trình giúp cung  
cấp cho người học những kiến thức cơ bản về ngôn ngữ lập trình PHP cũng như kỹ  
năng sử dụng công cụ quản trị cơ sở dữ liệu MySQL.  
Để học được mô đun này người học cần có kiến thức cơ bản về cơ sở dữ liệu và  
HTML.  
Cấu trúc chung của giáo trình này bao gồm 5 bài:  
Bài 1: Khái niệm cơ bản về Cookie và session trong PHP  
Lời cảm ơn  
Giáo trình được biên soạn trên cơ sở các văn bản quy định của Nhà nước và tham  
khảo nhiều tài liệu liên quan có giá trị. Song chắc hẳn quá trình biên soạn không tránh  
khỏi những thiếu sót nhất định. Ban biên soạn mong muốn và thực sự cảm ơn những ý  
kiến nhận xét, đánh giá của các chuyên gia, các thầy cô đóng góp cho việc chỉnh sửa  
để giáo trình ngày một hoàn thiện hơn.  
Lâm Đồng, ngày 10 tháng 12 năm 2019  
Tham gia biên soạn  
1. Phạm Đình Nam  
2. Ngô Thiên Hoàng  
3. Nguyễn Quỳnh Nguyên  
4. Phan Ngọc Bảo  
Trang 2  
MỤC LỤC  
BÀI 1: KHÁI NIỆM CƠ BẢN VỀ COOKIE VÀ SESSION TRONG PHP  
Cookie và session là hai phương pháp sử dụng để quản lý các phiên làm việc  
giữa người sử dụng và hệ thống. Việc quản lý phiên làm việc này sẽ giúp bạn tạo ra sự  
chứng thực hiệu quả bởi việc xác nhận thông tin trước khi truy cập vào một phân vùng  
cố định. Ngoài ra, việc quản lý tốt phiên làm việc cũng giúp người truy cập cảm thấy  
dễ dàng sử dụng dịch vụ của trang web cho những lần truy cập sau. Bởi cớ chế quản lý  
phiên làm việc ghi nhận lại quá trình truy cập của người sử dụng khi họ thăm viếc  
trang web của bạn lần đầu.  
1. Tổng quan về cookie  
Cookie là 1 đoạn dữ liệu được ghi vào đĩa cứng hoặc bộ nhớ của máy người sử  
dụng. Nó được trình duyệt gởi ngược lên lại server mỗi khi browser tải 1 trang web từ  
server.  
Những thông tin được lưu trữ trong cookie hoàn toàn phụ thuộc vào website trên  
server. Mỗi website có thể lưu trữ những thông tin khác nhau trong cookie, ví dụ thời  
điểm lần cuối ta ghé thăm website, đánh dấu ta đã login hay chưa, v.v...  
Cookie được tạo ra bởi website và gởi tới browser, do vậy 2 website khác nhau  
(cho dù cùng host trên 1 server) sẽ có 2 cookie khác nhau gởi tới browser. Ngoài ra,  
mỗi browser quản lý và lưu trữ cookie theo cách riêng của mình, cho nên 2 browser  
cùng truy cập vào 1 website sẽ nhận được 2 cookie khác nhau. a -Thiết lập cookie:  
Để thiết lập cookie ta sử dụng cú pháp:  
Setcookie("tên cookie","giá trị", thời gian sống) Tên cookie là tên mà chúng ta  
đặt cho phiên làm việc.  
Giá trị là thông số của tên cookie.  
Ví dụ:  
Setcookie("username","admin", time() +3600)  
Như ví dụ trên ta thấy với tên là username và giá trị là admin, có thời gian sống  
là 1 giờ tính từ thời điểm thiết lập.  
Chú ý: Kịch bản cookie phải đặt trên mọi giá trị trả về bao gồm thẻ HTML và  
lệnh echo.  
Kịch bản cookie phải đặt trên mọi giá trị trả về bao gồm thẻ HTML và lệnh echo.  
b - Sử dụng cookie:  
Để sử dụng lại cookie vừa thiết lập, chúng ta sử dụng cú pháp:  
Cú pháp: $_COOKIE["tên cookies"]  
Tên cookie là tên mà chúng ta thiết lập phía trên.  
Ví dụ:  
Tạo trang cookie.php với nội dung sau:  
<?php  
setcookie("name","Kenny  
Huy",time() + 3600);  
?>  
Trang 5  
   
<html>  
<head>  
<title>Test page 1</title></head>  
<body>  
<b><a href=cookie2.php>Click here</a></b>  
</body>  
</html>  
Tiếp tục tạo trang cookie2.php với nội dung sau:  
<html>  
<head><title>Result Page</title></head>  
<body>  
<?php  
echo  
"Ten  
cua  
ban  
la  
<b>".$_COOKIE['name']."</b>";  
?>  
</body>  
</html>  
c- Hủy Cookie:  
Để hủy 1 cookie đã được tạo ta có thể dùng 1 trong 2 cách sau:  
+ Cú pháp: setcookie("Tên cookie")  
Gọi hàm setcookie với chỉ duy nhất tên cookie mà thôi  
+ Dùng thời gian hết hạn cookie là thời điểm trong quá khứ.  
Ví dụ: setcookie("name","Kenny Huy",time()-3600);  
Ví dụ:  
Tiếp tục tạo trang cookie3.php với nội dung sau:  
<?php  
setcookie("name","Kenny  
Huy",time()-360);  
?>  
<html>  
<head>  
<title>Test page 1</title></head>  
<body>  
<b><a href=cookie2.php>Click here</a></b>  
</body>  
</html>  
Trang 6  
2. Tổng quan về session  
Một cách khác quản lý người sử dụng là session. Session được hiểu là khoảng  
thời gian người sử dụng giao tiếp với 1 ứng dụng. Một session được bắt đầu khi người  
sử dụng truy cập vào ứng dụng lần đầu tiên, và kết thúc khi người sử dụng thoát khỏi  
ứng dụng. Mỗi session sẽ có được cấp một định danh (ID) khác nhau và nội dung  
được lưu trong thư mục thiết lập trong file php.ini (tham số session.save_path).  
a- Thiết lập session:  
Để thiết lập 1 session ta sử dụng cú pháp: session_start()  
Đoạn code này phải được nằm trên các kịch bản HTML. Hoặc những lệnh echo,  
printf.  
Để thiết lập 1 giá trị session, ngoài việc cho phép bắt đầu thực thi session. Chúng  
ta còn phải đăng ký 1 giá trị session. Để tiện cho việc gán giá trị cho session đó.  
Ta có cú pháp sau: session_register("Name")  
Ví dụ:  
<?php  
Session_start();  
Session_register("username");  
?>  
b- Sử dụng giá trị của session:  
Giống với cookie. Để sử dụng giá trị của session ta sử dụng mã lệnh sau:  
Cú pháp: $_SESSION["name"]  
$_SESSION["name"]  
Với Name là tên mà chúng ta sử dụng hàm session_register("name") để khai báo.  
Ví dụ:  
Tạo trang session.php với nội dung sau:  
<?php  
session_start();  
session_register("name");  
$_SESSION["name"] = "Kenny Huy";  
?>  
<html>  
<head>  
<title>Test page 1</title></head>  
<body>  
<b><a href=session2.php>Click here</a></b>  
</body>  
Trang 7  
 
</html>  
Tạo trang session2.php với nội dung sau:  
<?  
session_start(  
); ?>  
<html>  
<head><title>Result Page</title></head>  
<body> <?php echo "Ten cua ban la  
<b>".$_SESSION["name"]."</b>";  
?>  
</body>  
</html>  
c- Hủy bỏ session:  
Để hủy bỏ giá trị của session ta có những cách sau:  
session_destroy() // Cho phép hủy bỏ toàn bộ giá trị của  
session session_unset()// Cho phép hủy bỏ session .  
Ví dụ:  
Tạo trang session3.php với nội dung sau:  
<?php  
session_start();  
session_destroy();  
?>  
<html>  
<head>  
<title>Test page 1</title></head>  
<body>  
<b><a href=session2.php>Click here</a></b>  
</body>  
</html>  
3. Tổng Kết  
Sau bài học này chúng ta đã nắm được cách điều khiển phiên làm việc giữa  
cookie và session. Sử dụng chúng trong từng trường hợp cụ thể. Từ đó có thể áp dụng  
để viết những ứng dụng nhỏ như kiểm soát người đăng nhập, làm giỏ hàng online,…..  
4. Bài tập áp dụng  
Xây dựng website sử dụng tính năng session thỏa mãn những yêu cầu sau:  
Trang 8  
   
1-  
Tạo trang đăng nhập với username/password là : admin/vietchuyen. Nếu  
user đăng nhập thành công thì sẽ xuất ra dòng welcome, admin.  
2- Tạo trang đăng xuất thoát khỏi phần quản trị  
Trang 9  
BÀI 2: KHÁI NIỆM VỀ HÀM VÀ GỌI LẠI HÀM TRONG PHP  
Để giảm thời gian lặp lại 1 thao tác code nhiều lần, PHP hỗ trợ người lập trình  
việc tự định nghĩa cho mình những hàm có khả năng lặp lại nhiều lần trong website.  
Việc này cũng giúp cho người lập trình kiểm soát mã nguồn một cách mạch lạc. Đồng  
thời có thể tùy biến ở mọi trang. Mà không cần phải khởi tạo hay viết lại mã lệnh như  
HTML thuần.  
1. Hàm tự định nghĩa  
Cú pháp:  
function  
functiono_name()  
{
//Lệnh thực thi  
}
Tên hàm có thể là một tổ hợp bất kỳ những chứ cái, con số và dấu gạch dưới,  
nhưng phải bắt đầu từ chứ cái và dấu gạch dưới.  
Ví dụ:  
<?php  
function  
name()  
{
$name= array("Kenny", "Jiro", "Calvin", "Gillian");  
foreach ($name as $test)  
{ echo "$test<br>"; }  
}
name(  
);  
?>  
2. Hàm tự định nghĩa với các tham số  
Cú pháp:  
function function_name($gt1,$gt2)  
{
//Hành động  
}
Ví dụ:  
<?php function  
indulieu($text)  
{ echo "$text<br>"; }  
indulieu("welcome");  
Trang 10  
     
indulieu("who are  
you ?");  
?>  
3. Hàm tự định nghĩa với giá trị trả về  
Cú pháp:  
function function_name(Có hoặc không có đối số)  
{
//Thuc thi  
return  
giatri; }  
Ví dụ:  
<?php function  
tinhtong($a,$b)  
{
$total=$a+$b;  
return $total;  
} echo  
tinhtong(19,31)  
?>  
4. Gọi lại hàm trong PHP  
PHP cung cấp nhiều hàm cho phép triệu gọi lại file. Như hàm include("URL đến  
file"), require("URL Đến file").  
Ngoài hai cú pháp trên còn có include_once(), require_once(). Hai hàm này cũng  
có trách nhiệm gọi lại hàm. Những chúng sẽ chỉ gọi lại duy nhất 1 lần mà thôi.  
Ví dụ:  
Tạo file top.html với nội dung:  
<html><head><title>Welcome to  
you</title></head>  
<body>  
<table border=1 width=700>  
<tr><td colspan=5 align=center>Banner</td></tr>  
<tr>  
<td align=center> Home </td>  
<td align=center> News </td>  
<td align=center> Music </td>  
<td align=center> Download</td>  
<td align=center> Contact</td></tr>  
Trang 11  
   
Tạo file body.html với nội  
dung: <tr><td colspan=5  
align=center>  
Noi dung website  
</td>  
</tr>  
Tạo file bottom.html với nội dung:  
<tr>  
Copyright@ abc.com  
</tr>  
</table>  
</body>  
</html>  
Tạo trang index.php với nội dung:  
<?php include("top.html"); include("body.html");  
include("bottom.html");  
?>  
5. Tổng kết  
Kết thúc bài học này, hẳn các bạn đã có những khái niệm cơ bản về hàm và cách  
sử dụng lại mã PHP. Trên ứng dụng thực tế việc dùng các hàm để triệu gọi đóng vai  
trò khá quan trọng, nó giúp mã nguồn của người sử dụng logic và dễ dàng chỉnh sửa  
hơn, việc ứng dụng nó trên website như thế nào cũng sẽ tùy biến hơn so với cách viết  
trực tiếp trên từng file.  
6. Bài tập áp dụng  
1-  
Thiết kế website hoàn chỉnh bằng việc phân tách các file.  
2-  
Xây dựng website với yêu cầu sau. Cho phép người sử dụng chọn mua  
số lượng hàng. Với giá tương ứng với từng mặt hàng. Sau đó xuất tổng tiền(đã bao  
gồm thuế VAT 10%).  
Trang 12  
   
BÀI 3: CƠ BẢN VỀ NGÔN NGỮ SQL VÀ MYSQL  
Mysql là hệ quản trị dữ liệu miễn phí, được tích hợp sử dụng chung với apache,  
PHP. Chính yếu tố phát triển trong cộng đồng mã nguồn mở nên mysql đã qua rất  
nhiều sự hỗ trợ của những lập trình viên yêu thích mã nguồn mở. Mysql cũng có cùng  
một cách truy xuất và mã lệnh tương tự với ngôn ngữ SQL. Nhưng Mysql không bao  
quát toàn bộ những câu truy vấn cao cấp như SQL. Về bản chất Mysql chỉ đáp ứng  
việc truy xuất đơn giản trong quá trình vận hành của website nhưng hầu hết có thể giải  
quyết các bài toán trong PHP.  
1. Cách khởi động và sử dụng MYSQL.  
Ở Bài 1 đã hướng dẫn cách cài đặt môi trường chạy PHP&MySQL. Chúng ta sử  
dụng command như sau:  
Mysql –hname –uuser –ppass  
Để truy cập vào cơ sở dữ liệu.  
Hoặc sử dụng bộ appserv để vào nhanh hơn theo đường dẫn sau:  
Start/ Appserv/ Mysql command Line client  
Sau đó nhập password mà chúng ta đã đặt vào.  
2. Những định nghĩa cơ bản  
a) Định nghĩa cơ sở dữ liệu, bảng, cột:  
Cơ sở dữ liệu: là tên của cơ sở dữ liệu chúng ta muốn sử dụng  
Bảng: Là 1 bảng giá trị nằm trong cơ sở dữ liệu.  
Cột là 1 giá trị nằm trong bảng. Dùng để lưu trữ các trường dữ liệu.  
Thuộc tính  
Ví dụ:  
Như vậy ta có thể hiểu như sau:  
1 cơ sở dữ liệu có thể bao gồm nhiều bảng.  
1 bảng có thể bao gồm nhiều cột  
1 cột có thể có hoặc không có những thuộc tính.  
Trang 13  
     
b) Định nghĩa 1 số thuật ngữ:  
NULL : Giá trị cho phép rỗng.  
AUTO_INCREMENT : Cho phép giá trị tăng dần (tự động).  
UNSIGNED : Phải là số nguyên dương  
PRIMARY KEY : Cho phép nó là khóa chính trong bảng.  
c)Loại dữ liệu trong Mysql:  
Ở đây chúng tả chỉ giới thiệu 1 số loại thông dụng: 1 số dữ liệu khác có thể tham  
khảo trên trang chủ của mysql.  
3. Những cú pháp cơ bản  
Cú pháp tạo 1 cơ sở dữ liệu:  
CREATE DATABASE tên_cơ_sở_dữ_liệu;  
Cú pháp sử dụng cơ sở dữ liệu: Use tên_database;  
Cú pháp thoát khỏi cơ sở dữ liệu: Exit  
Cú pháp tạo 1 bảng trong cơ sở dữ liệu:  
CREATE TABLE user (<tên_cột> <mô_tả>,…,<tên_cột_n>…..<mô_tả_n>)  
Ví dụ:  
mysql> create table user(user_id INT(15) UNSIGNED NOT NULL  
AUTO_INCREMENT, username VARCHAR(255) NOT NULL, password  
CHAR(50) NOT NULL, email  
VARCHAR(200) NOT NULL, PRIMARY KEY (user_id));  
Hiển thị có bao nhiều bảng: show tables;  
Hiển thị có bao nhiêu cột trong bảng: show columns from table;  
Thêm 1 cột vào bảng :  
ALTER TABLE tên_bảng ADD <tên_cột> <thuộc_tính> AFTER <tên_cột>  
Ví dụ:  
Trang 14  
 
mysql> alter table user add sex varchar(200) NOT NULL after email;  
4. Thêm giá trị vào bảng  
Cú pháp:  
INSERT INTO Tên_bảng(tên_cột) VALUES(Giá_trị_tương_ứng);  
Ví dụ:  
mysql> insert into user(username,password,email,sex,home)  
values("Lanna","12345","[email protected]om","F","www.abc.com");  
5. Truy xuất dữ liệu  
Cú pháp:  
SELECT tên_cột FROM Tên_bảng;  
Ví dụ:  
mysql> select user_id,username from user;  
6. Truy xuất dữ liệu với điều kiện  
Cú pháp:  
SELECT tên_cột FROM Tên_bảng WHERE điều kiện;  
Ví dụ:  
mysql> select user_id,username from user where user_id=2;  
7. Truy cập dữ liệu và sắp xếp theo trình tự  
Cú pháp:  
SELECT tên_cột FROM Tên_bảng  
WHERE điều kiện (có thể có where hoặc không)  
ORDER BY Theo quy ước sắp xếp.  
Trong đó quy ước sắp xếp bao gồm hai thông số là ASC (từ trên xuống dưới),  
DESC (từ dưới lên trên).  
mysql> select user_id,username from user order by username ASC ;  
8. Truy cập dữ liệu có giới hạn  
Cú pháp:  
SELECT tên_cột FROM Tên_bảng  
WHERE điều kiện (có thể có where hoặc không)  
LIMIT vị trí bắt đầu, số record muốn lấy ra  
Ví dụ:  
mysql> select user_id,username from user order by username ASC limit 0,10 ;  
9. Cập nhật dữ liệu trong bảng  
Cú pháp:  
Trang 15  
           
Update tên_bảng set tên_cột=Giá trị mới  
WHERE (điều kiện).  
Nếu không có ràng buộc điều kiện, chúng sẽ cập nhật toàn bộ giá trị mới của các  
record trong bảng.  
Ví dụ:  
mysql> update user set email="admin@qhonline.info" where user_id=1 ;  
10. Xóa dữ liệu trong bảng  
Cú pháp:  
DELETE FROM tên_bảng WHERE (điều kiện).  
Nếu không có ràng buộc điều kiện, chúng sẽ xó toàn bộ giá trị của các record  
trong bảng.  
Ví dụ mysql>delete from user where user_id=1 ;  
Trang 16  
 
BÀI 4: KẾT HỢP PHP VÀ MYSQL TRONG ỨNG DỤNG WEBSITE  
Ở bài trước, chúng ta đã cùng nghiên cứu về các cú pháp sql và Mysql cơ bản  
bao gồm việc tảo bảng, tạo kết nối, thêm, sửa, xóa các dòng dữ liệu trong cơ sở dữ  
liệu. Và tiếp theo bài này, chúng ta sẽ cùng tìm hiểu về cách sử dụng mysql kết hợp  
với PHP để xuất ra dữ liệu như thế nào.  
Để làm việc với mysql và PHP chúng ta cần nắm 6 hàm cơ bản:  
1. Kết nối cơ sở dữ liệu  
Cú pháp:  
mysql_connect("hostname","user","pass")  
2. Lựa chọn cơ sở dữ liệu  
Cú pháp:  
mysql_select_db("tên_CSDL")  
Ví dụ:  
$conn=mysql_connect("localhost","root","root") or die(" khong the ket noi");  
mysql_select_db("demo");  
3. Thực thi câu lệnh truy vấn  
Cú pháp:  
mysql_query("Câu truy vấn ở đây");  
4. Đếm số dòng dữ liệu trong bảng  
Cú pháp:  
mysql_num_rows();  
5. Lấy dữ liệu từ bảng đƣa vào mảng  
Cú pháp:  
mysql_fetch_array();  
6. Đóng kết nối cơ sở dữ liệu  
Cú pháp:  
mysql_close();  
7. Ví dụ áp dụng  
Tạo cơ sở dữ liệu dựa trên từng  
đoạn code sau: mysql -hlocalhost -  
uroot -proot mysql>create database  
demo_mysql; mysql> use demo_mysql;  
mysql>create table user(id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,  
username VARCHAR(50) NOT NULL, password CHAR(50) NOT NULL,  
PRIMARY KEY(id));  
Tạo trang test.php. Đầu tiên chúng ta sẽ kết nối cơ sở dữ liệu.  
<?  
Trang 17  
               
$conn=mysql_connect("localhost", "root", "root") or die("can't connect database");  
mysql_select_db("demo_mysql",$conn);  
?>  
Tiếp đến viết câu truy vấn lấy ra tất cả user từ database.  
<?  
$sql="select * from user";  
$query=mysql_query($sql);  
?>  
Kiểm tra xem trong bảng dữ liệu đã tồn tại user nào chưa ?. Nếu chưa thì xuất ra  
thông báo lỗi, ngược lại thì đưa chúng vào mảng và lặp cho đến hết bảng dữ liệu.  
<?  
if(mysql_num_rows($query)  
== 0)  
{ echo "Chua co  
du lieu";  
} else {  
while($row=mysql_fetch_array($q  
uery))  
{ echo $row[username] ." -  
".$row[password]."<br />";  
}
}
?>  
Và cuối cùng chúng ta đóng kết nối và kết thúc thao tác xử lý.  
<?  
mysql_close($conn  
);  
?>  
Và cuối cùng là file hoàn chỉnh của ứng dụng trên:  
<?  
$conn=mysql_connect("localhost", "root", "root") or die("can't connect database");  
mysql_select_db("demo_mysql",$conn);  
$sql="select * from user";  
$query=mysql_query($sql);  
if(mysql_num_rows($query) == 0)  
{ echo "Chua co  
du lieu";  
Trang 18  
Tải về để xem bản đầy đủ
pdf 42 trang yennguyen 22800 Free
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình PHP và MySQL - Ngành/nghề: Thiết kế trang web", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfgiao_trinh_php_va_mysql_nganhnghe_thiet_ke_trang_web.pdf