1. Bộ Công Thương
Trường Đại Học Công Nghiệp Thành Phố Hồ Chí Minh
Khoa Công Nghệ Thông Tin
BÁO CÁO THỰC TẬP TỐT NGHIỆP
ĐỀ TÀI: XÂY DỰNG PHẦN MỀM QUẢN LÝ HỌC SINH
TRÊN PHP & MYSQL
Tên công ty thực tập :
GIÁO VIÊN PHỤ TRÁCH :THÁI LÊ MỸ LOAN
GIÁO VIÊN PHỤ TRÁCH :
HỌ TÊN SINH VIÊN THỰC TẬP :VÕ MINH TRƯỜNG
1
2. LỜI CẢM ƠN
---oOo---
Em xin chân thành cảm ơn Ban Giám Hiệu Nhà
Trường ĐH Công Nghiệp TP.HCM. Ban Chủ
Nhiệm Khoa CNTT đã tạo cơ hội cho em tiếp xúc
thực tế, biết được quy trình của trung tâm đào tạo
quản trị mạng & an ninh mạng quốc tế ATHENA
như thế nào, em cũng chân thành cảm ơn thầy cô ở
khoa CNTT cũng như ở trung tâm ATHENA tận
tình giúp em. Tận tụy truyền đạt những ý kiến thực
quý báu trong thời gian thực tập, giúp em có những
kiến thức trang bị sau này.Em cũng chân thành cảm
ơn cô Thái Lê Mỹ Loan giáo viên thực tập hướng
dẫn và các thầy cô trong khoa đã trực tiếp hướng
dẫn giúp em hoàn thành đề tài này
TP.HCM ngày 21 tháng 3 năm 2014
Sinh viên thực hiện
Võ Minh Trường
2
4. MỤC LỤC
A.Phần mở đầu ....................................................
Giới thiệu trung tâm ATHENA...................
B.Phần tổng quan ...............................................
1.Lý do chọn đề tài ......................................
2.giới thiệu so lược về ứng dụng:...............
C.Mô tả bài toán:
1.hiện trạng hệ thống:...................................
2.Mô tả bài toán :.........................................
3.Đối tượng sử dụng:...................................
4.Yêu cầu hệ thống:.....................................
5 .Quản lý điểm :...........................................
D.Cơ sở lý thuyết :................................................
i.giới thiệu về Php & MySQL..........................
• Định nghĩa:.............................................
• Lịch sử phát triển của Php & MySQL...
• Tại sao lại sử dụng MySQL?..............
• Một số đặc điểm của
MySQL..............
• Các bước xây dựng chương trình có kết
nối tới CSDL:
• Thiết lập kêt nối tới MySQL...................
• Thực hiện các truy vấn thêm, xóa,
sửa bản ghi thông qua câu lệnh SQL
• Tăng tốc độ xử lý CSDL MySQL
• Hàm trong PHP
• Các câu lệnh gán và rẽ nhánh trong PHP
4
5. • Các kiểu dữ liệu trong PHP
E.Xây dựng,thiết kế cài đặt chương trình........
• Yêu cầu :
• Xây dựng bảng CSDL .......
• Thiết kế CSDL.....................
• Làm trên Internet ,Sever VPS..
• Triển khai soucre code lên VPS..
• Tích hợp domain ........................
• Backup Résore_database.......
F.Thao tác thực hiện:..................................
A.Phần mở đầu :
Giới thiệu về trung tâm ATHENA :
5
6. Trung Tâm Đào Tạo Quản Trị Mạng & An Ninh Mạng Quốc
Tế ATHENA được thành lập từ năm 2004, là một tổ chức qui tụ
nhiều trí thức trẻ Việt Nam đầy năng động, nhiệt huyết và kinh
nghiệm trong lãnh vực CNTT, với tâm huyết góp phần vào công
cuộc thúc đẩy tiến trình đưa công nghệ thông tin là ngành kinh tế
mũi nhọn, góp phần phát triển nước nhà .
Lĩnh vực hoạt động chính:
+Trung tâm ATHENA đã và đang tập trung chủ yếu vào đào tạo
chuyên sâu quản trị mạng, an ninh mạng, thương mại điện tử
theo các tiêu chuẩn quốc tế của các hãng nổi tiếng như Microsoft,
Cisco, Oracle, Linux LPI , CEH,..
Đội ngũ giảng viên :
+Tất cả các giảng viên trung tâm ATHENA có đều tốt nghiệp từ các
trường đại học hàng đầu trong nước .... Tất cả giảng
viên ATHENA đều phải có các chứng chỉ quốc tế như MCSA,
MCSE, CCNA, CCNP, Security+, CEH,có bằng sư phạm Quốc tế
(Microsoft Certified Trainer).Đây là các chứng chỉ chuyên môn bắt
buộc để đủ điều kiện tham gia giảng dạy tại trung tâm ATHENA
+Bên cạnh đó,Các giảng viên ATHENA thường đi tu nghiệp và cập
nhật kiến thức công nghệ mới từ các nước tiên tiến như Mỹ , Pháp,
Hà Lan, Singapore,... và truyền đạt các công nghệ mới này trong các
chương trình đào tạo tại trung tâm ATHENA
Cơ sở vật chất:
6
7. +Thiết bị đầy đủ và hiện đại
+Chương trình cập nhật liên tục, bảo đảm học viên luôn tiếp cận với
những công nghệ mới nhất.
+Phòng máy rộng rãi, thoáng mát
TRUNG TÂM ĐÀO TẠO QUẢN TRỊ MẠNG & AN NINH MẠNG
QUỐC TẾ ATHENA
Cơ sở 1: 92 Nguyễn Đình Chiểu, phường Đa Kao, Q1. Điện thoại: (08)38244041 - 090 78 79 477-094 323 00
99(Gần ngã tư Đinh Tiên Hoàng - Nguyễn Đình Chiểu)
Cơ sở 2: 2 Bis Đinh Tiên Hoàng, phường Đa Kao, Q1. Điện thoại: (08)22103801 - 094 320 00 88
B.Phần tổng quan :
1.Lý do chọn đề tài :
7
8. - Hiện nay công nghệ thông tin được xem là một ngành mũi nhọn của các
quốc gia, đặc biệt là các quốc gia dang phát triển, để tiến hành công nghiệp
hóa và hiện đại hóa đất nước. Sự bùng nổ thông tin và sự phát triển mạnh
mẽ của thời đại công nghệ: phần cứng và phần mềm, ứng dụng web ngày
càng trở nên phong phú, đa dạng và hoàn thiện hơn cho người dùng.
- Sự phát triển nhanh chóng của internet trong mọi lĩnh vực của đời sống đã
khiến nó trở thành một phần không thể thiếu trong cuộc sống của chúng ta.
Từ thương mại, y tế cho đến các tổ chức giáo dục tất cả đều chuyển sang
ứng dụng trực tuyến để bắt kịp nhịp độ tiến triển của thế giới công nghệ số.
- 2 .giới thiệu sơ lược về ứng dụng:
i.Mục Tiêu:
- Hệ thống website của trường được xây dựng với múc tiêu chủ yếu là hộ trợ
công tác quản lý điểm, quản lý sinh viên, cập nhật các thông báo của ban
giam hiệu-phòng công tác học sinh-các phòng khoa v.v lên website chính
xác và nhanh nhất.
ii.Chức Năng Chính:
Quản lý thông tin sinh viên.
Quản lý bảng điểm sinh viên.
Cập nhật thời khóa biểu.
Upload chương trình khung của các ngành học.
Thông tin của trường.
Liệt kê danh sách các khoa, ngành học, lớp.
Cập nhật các thông báo của trường.
C.Mô tả bài toán :
1.hiện trạng hệ thống:
- Hiện tại việc quản lý điểm, quản lý hồ sơ sinh viên đang theo học tại trường
cũng như hồ sơ sinh viên mới vẵn còn thủ công là chính.
- Các thông báo của trường đến sinh viên vẫn còn chậm trễ.
- Các sinh viên mới chưa nắm rõ về các ngành do trường đào tạo cũng như các
khoa và cơ cấu tổ chức trường.
-
2.Mô Tả Bài Toán:
8
9. Hệ thống website này sẽ giúp thực hiện việc quản lý điểm, hồ sơ sinh viên cũ
và mới dễ dàng và trực tuyến.
- Các thông báo của trường sẽ được cập nhật mốt cách nhanh nhất và chính
xác nhất.
- Thông tin về khoa, ngành học được cập nhật để các sinh viên mới nắm rõ và
chọn ngành nghề mình yêu thích và phù hợp.
3.Đối tượng sử dụng: học sinh ,sinh viên .....giáo viên nhà trường,.................
4.Yêu cầu hệ thống:
o Có sự phân quyền người dùng theo đúng chức
năng của mình.
o Hộ trợ việc nhập thông tin sinh viên mới vào
trường.
o Hộ trợ việc nhập điểm và tính điểm sinh viên
o Lưu hồ sơ sinh viên.
o Lưu trữ điểm, xếp loại học tập, điểm rèn luyện.
Lưu trữ thông tin ngành học, khoa, lớp, hệ đào tạo
- 5.Quản lý điểm :
- Mỗi sinh viên theo học tại trường đều có môt bảng điểm riêng để đánh giá
việc học tại trường, ngoài ra sinh viên còn có một bảng điểm nữa đó là bảng
điểm hạnh kiểm nhằm để đánh giá việc thực hiện nội qui nhà trường qua đó
cũng là hạnh kiểm của sinh viên.
- Tùy theo hệ đào tạo mà có cách tính điểm khác nhau.
D.Cơ sở lý thuyết :
i.Giới thiệu về Php & MySQL :
PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập trìnhkịch bản hay
một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn
mở, dùng cho mục đích tổng quát. Nó rất thích hợp vớiweb và có thể dễ dàng nhúng vào
trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp
giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các
9
10. ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến
nhất thế giới.
1. <html>
2.
3. <head>
4.
5. <title>Mã mẫu</title>
6.
7. </head>
8.
9. <body>
10.
11. <?php
12.
13. echo "Chào thế giới PHP!";
14.
15. ?>
16.
17. </body>
18.
19. </html>
20.
• Lịch sử phát triển của Php & My SQL :
PHP được phát triển từ một sản phẩm có tên là PHP/FI. PHP/FI do Rasmus Lerdorf tạo ra
năm 1995, ban đầu được xem như là một tập con đơn giản của các mã kịch bản Perl để theo
dõi tình hình truy cập đến bản sơ yếu lý lịch của ông trên mạng. Ông đã đặt tên cho bộ mã kịch
bản này là 'Personal Home Page Tools'. Khi cần đến các chức năng rộng hơn, Rasmus đã viết
ra một bộ thực thi bằng C lớn hơn để có thể truy vấn tới các cơ sở dữ liệu và giúp cho người
sử dụng phát triển các ứng dụng web đơn giản. Rasmus đã quyết định công bố mã nguồn của
PHP/FI cho mọi người xem, sử dụng cũng như sửa các lỗi có trong nó đồng thời cải tiến mã
nguồn.
10
11. PHP/FI, viết tắt từ "Personal Home Page/Forms Interpreter", bao gồm một số các chức năng cơ
bản cho PHP như ta đã biết đến chúng ngày nay. Nó có các biến kiểu như Perl, thông dịch tự
động các biến của form và cú pháp HTML nhúng. Cú pháp này giống như của Perl, mặc dù hạn
chế hơn nhiều, đơn giản và có phần thiếu nhất quán.
Vào năm 1997, PHP/FI 2.0, lần viết lại thứ hai của phiên bản C, đã thu hút được hàng ngàn
người sử dụng trên toàn thế giới với xấp xỉ 50.000 tên miền đã được ghi nhận là có cài đặt nó,
chiếm khoảng 1% số tên miền có trên mạng Internet. Tuy đã có tới hàng nghìn người tham gia
đóng góp vào việc tu chỉnh mã nguồn của dự án này thì vào thời đó nó vẫn chủ yếu chỉ là dự
án của một người.
PHP/FI 2.0 được chính thức công bố vào tháng 11 năm 1997, sau một thời gian khá dài chỉ
được công bố dưới dạng các bản beta. Nhưng không lâu sau đó, nó đã được thay thế bởi các
bản alpha đầu tiên của PHP 3.0.
PHP 3.0 là phiên bản đầu tiên cho chúng ta thấy một hình ảnh gần gũi với các phiên bản PHP
mà chúng ta được biết ngày nay. Nó đã được Andi Gutmans và Zeev Suraski tạo ra năm 1997
sau khi viết lại hoàn toàn bộ mã nguồn trước đó. Lý do chính mà họ đã tạo ra phiên bản này là
do họ nhận thấy PHP/FI 2.0 hết sức yếu kém trong việc phát triển các ứng dụng thương mại
điện tử mà họ đang xúc tiến trong một dự án của trường đại học. Trong một nỗ lực hợp tác và
bắt đầu xây dựng dựa trên cơ sở người dùng đã có của PHP/FI, Andi, Rasmus và Zeev đã quyết
định hợp tác và công bố PHP 3.0 như là phiên bản thế hệ kế tiếp của PHP/FI 2.0, và chấm dứt
phát triển PHP/FI 2.0.
PHP 4[]
Vào mùa đông năm 1998, ngay sau khi PHP 3.0 chính thức được công bố, Andi Gutmans và
Zeev Suraski đã bắt đầu bắt tay vào việc viết lại phần lõi của PHP. Mục đích thiết kế là nhằm cải
tiến tốc độ xử lý các ứng dụng phức tạp, và cải tiến tính mô đun của cơ sở mã PHP. Những
ứng dụng như vậy đã chạy được trên PHP 3.0 dựa trên các tính năng mới và sự hỗ trợ khá
nhiều các cơ sở dữ liệu và API của bên thứ ba, nhưng PHP 3.0 đã không được thiết kế để xử lý
các ứng dụng phức tạp như thế này một cách có hiệu quả.
MySQL :
MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới và được các nhà
phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ
cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp
một hệ thống lớn các hàm tiện ích rất mạnh. Với tốc độ và tính bảo mật cao, MySQL rất thích
hợp cho các ứng dụng có truy cập CSDL trên internet. MySQL miễn phí hoàn toàn cho nên bạn
có thể tải về MySQL từ trang chủ. Nó có nhiều phiên bản cho các hệ điều hành khác nhau:
phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS
X, Unix,FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, ...
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan hệ sử dụng
Ngôn ngữ truy vấn có cấu trúc (SQL).
MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nó làm nơi lưu trữ
những thông tin trên các trang web viết bằng PHP hay Perl,...
• Tại sao lại sử dụng MySQL?
11
12. MySQL là một phần mềm quản trị CSDL mã
nguồn mở, nằm trong nhóm LAMP (Linux -
Apache -MySQL - PHP)
• Một số đặc điểm của MySQL
MySQL là một phần mềm quản trị CSDL dạng server-
based (gần tương đương với SQL Server của Microsoft).
MySQL quản lý dữ liệu thông qua các CSDL, mỗi CSDL có
thể có nhiều bảng quan hệ chứa dữ liệu.
MySQL có cơ chế phân quyền người sử dụng riêng, mỗi
người dùng có thể được quản lý một hoặc nhiều CSDL khác
nhau, mỗi người dùng có một tên truy cập (user name) và
mật khẩu tương ứng để truy xuất đến CSDL.
Khi ta truy vấn tới CSDL MySQL, ta phải cung cấp tên truy
cập và mật khẩu của tài khỏan có quyền sử dụng CSDL đó.
Nếu không, chúng ta sẽ không làm được gì cả.
• Các bước xây dựng chương trình có kết
nối tới CSDL:
Thông thường, trong một ứng dụng có giao tiếp với CSDL, ta phải làm theo
bốn trình tự sau:
Bước 1: Thiết lập kết nối tới CSDL.
Bước 2: Lựa chọn CSDL.
Bước 3: Tiến hành các truy vấn SQL, xử lý các kết quả trả về nếu có
Bước 4: Đóng kết nối tới CSDL.
Nếu như trong lập trình thông thường trên Windows sử dụng các chương
trình điều khiển trung gian (ADO, ODBC...) để thực hiện kết nối và truy
vấn, thì trong PHP, khi lập trình tương tác với CSDL, chúng ta thường sử
dụng thông qua các hàm.
Chú ý: Trước khi sử dụng PHP để lập trình với MySQL, hãy sử dụng
chương trình quản lý phpMyAdmin để tạo trước một CSDL, vài bảng cũng
như người dùng... để tiện thực hành. Bài hướng dẫn sử dụng phpMyAdmin
sẽ được trình bày sau.
12
13. Trong bài viết này, tôi sử dụng MySQL chạy trên nền máy chủ localhost,
người sử dụng của CSDL này có username là mysql_user, mật khẩu là
mysql_password
• Thiết lập kêt nối tới MySQL
Để kết nối tới MySQL, ta sử dụng hàm mysql_connect()
Cú pháp:
PHP Code:
mysql_connect(host,tên_truy_cập,mật_khẩu);
trong đó:
host là chuỗi chứa tên (hoặc địa chỉ IP) của máy chủ cài đặt
MySQL.
tên_truy_cập là chuỗi chứa tên truy cập hợp lệ của CSDL cần
kết nối
mật_khẩu là chuỗi chứa mật khẩu tương ứng với tên truy cập
Ví dụ:
PHP Code:
<?
mysql_connect ("localhost", "thu_mot_ti","thu_h
ai_ti");
?>
Khi kết nối tới MySQL thành công, hàm sẽ trả về giá trị là một số
nguyên định danh của liên kết, ngược lại, hàm trả về giá trị
false.
Ta có thể dùng hàm if để kiểm tra xem có kết nối được tới
MySQL hay không:
PHP Code:
13
14. <?php
$link = mysql_connect("localhost", "mysql_u
ser", "mysql_password");
if (!$link)
{
echo "Không thể kết nối được tới CSDL
MySQL";
}
?>
MySQL chạy trên nền máy chủ localhost,
người sử dụng có username là mysql_user, mật
khẩu là mysql_password.
CSDL có tên là CMXQ_Forum, trong đó có một
bảng là CMXQ_Users để lưu thông tin .Bảng
CMXQ_Users có các trường sau:
User_ID: Autonumber.// mã số của người dùng
User_Name: Varchar [20] // tên truy cập của
người dùng
User_Pass: Varchar[64] //mật khẩu của người
dùng
User_IP: Varchar [15] //Địa chỉ IP của người
dùng.
Để thực thi một câu lệnh SQL bất kỳ
trong PHP tác động lên MySQL, ta dùng
hàm mysql_query
14
15. hêm một bản ghi vào bảng.
Ví dụ :muốn chèn thêm một người sử dụng có User_Name là "CMXQ",
User_Pass là "123456", User_Post=0 ta làm như sau:
PHP Code:
<?
$sql = "INSERT INTO CMXQ_Users (User_Name, User_Pass)
VALUES ("CMXQ","123456",0);
mysql_query ($sql);
?>
II. Xóa một bản ghi khỏi bảng.
Trong trường hợp này, ta sử dụng câu lệnh SQL DELETE FROM:
VD: tôi muốn xóa khỏi bảng CMXQ_Users tất cả những người có
User_Name="CMXQ":
PHP Code:
<?
$sql = "DELETE FROM CMXQ_Users WHERE User_Name='CMXQ'"
;
mysql_query ($sql);
?>
III. Sửa thông tin của bản ghi trong bảng.
Trong trường hợp này, tôi sử dụng cú pháp UPDATE:
VD: muốn cập nhật địa chỉ IP cho người có User_Name="CMXQ" với địa
chỉ IP được lấy từ trình duyệt:
PHP Code:
<?
$sql = "UPDATE CMXQ_Users SET User_IP ='" . $_SERVER['
REMOTE_ADDR'] . "' Where User_Name='CMXQ'";
mysql_query ($sql);
?>
Khi kết nối tới CSDL MySQL, chúng ta có 2 hàm
kết nối là mysql_connect() và mysql_pconnect(). Về
cơ bản thì hai hàm này có các tham số y hệt nhau,
nhưng nội hàm của chúng có những khác biệt đáng
kể.
15
16. Theo lý thuyết, mỗi lần gọi hàm mysql_connect(), hệ
thống sẽ khởi tạo một kết nối mới tới CSDL, còn khi
sử dụng hàm mysql_pconnect(), hệ thống sẽ tận
dụng kết nối đã được thiết lập trước đó.
0-ếu trang Web của chúng ta được triệu gọi nhiều
lần trong một khoảng thời gian ngắn, hàm
mysql_connect() sẽ tiêu tốn một lượng đáng kể tài
nguyên của hệ thống để thiết lập kết nối. Vì vậy, hãy
cố gắng sử dụng hàm kết nối mysql_pconnect().
Nhiều người thường thích truy vấn
dạng "Select *...". Dấu * ở đây sẽ bắt hệ
thống làm việc mệt nhọc hơn vì phải xử lý
nhiều dữ liệu hơn. Dữ liệu trả về cũng tiêu
tốn nhiều bộ nhớ hơn. Vì vậy, thay vì
select *, hãy chỉ select những trường cần
thiết.
Một vấn đề nữa là khi sử dụng hàm
mysql_fetch_array, nhiều người thường bỏ
qua các tham số tuỳ chọn. Nếu có thể,
hãy sử dụng tham số MYSQL_ASSOC, khi
đó hệ thống sẽ trả về một mảng với chỉ số
là tên trường, như vậy các bạn sẽ dễ hình
16
17. dung và đỡ tốn bộ nhớ vì phải phát sinh thêm một
mảng với chỉ số dạng số.
• Hàm trong PHP :Các hàm dựng sẵn trong
PHP (PHP Built-in functions) là các hàm đã được
các nhà phát triển PHP cài đặt sẵn, và chúng ta
chỉ việc đem ra sử dụng. Cần phân biệt các hàm
này với các hàm do người dùng tự cài đặt (user
functions). Các hàm do người dùng tự xây dựng
chỉ có thể được dùng trong chương trình có chứa
hàm đó. Khi chuyển qua một ứng dụng khác, nếu
chúng ta không viết lại các hàm đó thì chúng ta
sẽ không thể sử dụng.
• Các câu lệnh gán và rẽ nhánh trong PHP :
Lệnh gán
Lệnh này đã được học ở bài trước:
Cú pháp:
PHP Code:
$ten_bien = gia_tri;
Ví dụ:
PHP Code:
$ngay_sinh="1/4/1980";
$que_quan="Thanh Hoa";
$luong=300000;
17
18. 2. Các câu lệnh rẽ nhánh
Trong PHP có 2 dạng rẽ nhánh: rẽ hai nhánh (if) và rẽ
nhiều nhánh.
Lệnh rẽ nhánh là một trong những câu lệnh quan trọng
nhất của tất cả các ngôn ngữ lập trình. Nó cho phép bạn
thực thi một đoạn mã khi mà điều kiện chỉ định là đúng.
Trong PHP, lệnh rẽ nhánh có dạng sau:
PHP Code:
if (điều kiện)
{
công việc cần làm
}
Ví dụ:
if ($name="Sinh")
{
echo ("Good morning, my boss");
}
Nếu khối câu lệnh cần làm chỉ bao gồm duy nhất một
dòng lệnh, ta có thể bỏ cặp dấu {} :
PHP Code:
if ($name="Sinh")
echo ("Good morning, my boss");
Nhưng nếu nhiều hơn một dòng lệnh, ta phải
đưa chúng vào cặp dấu ngoặc {}:
18
19. if ($name=="Sinh")
{
echo ("Good morning, my boss");
echo ("Have a romantic day!");
}
Đoạn lệnh trên sẽ kiểm tra nếu điều kiện biến $name =
"Sinh" thì nó sẽ hiển thị lời chào. Còn nếu không thì nó
không làm gì cả!
Điều kiện đặt vào có thể là đúng, có thể là sai, có thể là
tổng hợp của nhiều điều kiện. Hãy xem ví dụ sau:
PHP Code:
if ("false" )
echo ("Khong co gi ca");
if (($name=="sinh") && ($pass=="test"))
echo ($name. "đã nhập đúng password")
;
Đoạn lệnh trên có thể viết tương đương với:
PHP Code:
if ($name=="sinh")
{
if ($pass=="test")
echo ($name. "đã nhập đúng password")
;
}
Như bạn thấy ở trên, trong một câu lệnh, chúng ta có thể
chèn nhiều đoạn lệnh khác, người ta gọi đó là cấu trúc
19
20. khối, tức là trong một khối lệnh, có thể có chứa nhiều
khối lệnh con khác. Nếu bạn phải đọc mã nguồn của
người khác, hi vọng bạn không bị hoa mắt vì hàng chục
khối lệnh chen chúc vào nhau như vậy.
Chúng ta có thể sử dụng các toán tử &&, || hay xor để
kết nối các điều kiện với nhau như bạn thấy ở trên
Câu lệnh rẽ nhánh đầy đủ:
Nếu điều kiện kiểm tra trả về false (sai), PHP cho phép
chúng ta chỉ định thực thi một khối mã lệnh khác bằng từ
khoá else
Ví dụ:
PHP Code:
if (($name=="sinh") && ($pass=="test"))
{
echo ("Good day, ".$name);
}
else
{
echo {"Sai mat khau!")
}
Chú ý đến một ngoại lệ sau: Trước từ khoá else
không bao giờ có dấu chấm phẩy (.
Lệnh rẽ nhiều nhánh:
20
21. Với câu lệnh if, PHP cho phép chúng ta rẽ nhiều nhánh
thông qua từ khoá elseif:
PHP Code:
if (dieu_kien1)
{
doan_lenh_1;
}
elseif (dieu_kien_2)
{
doan_lenh_2
}
elseif (dieu_kien_3)
} // bao nhiêu từ khoá elseif cũng được
else
{
doan_lenh_n
}
Ví dụ:
PHP Code:
if ($thu==2)
{
echo ("Chao co, van, su, ly");
}
elseif ($thu==3)
{
echo (" Hoa, Sinh, Dia, GDCD");
}
elseif ($thu==4)
{
echo ("KTCN, Van, Toan, Tieng Anh");
21
22. }
elseif ($thu==5)
{
echo (" Hoa, Toan, Van, Tin");
}
elseif ($thu==6)
{
echo ("Toan, Van, Anh, Sinh hoat");
}
else
{
Trong ví dụ trên, chúng ta đã lặp đi lặp lại thao tác
kiểm tra giá trị của biến $thu, mặc dù nó không thay đổi
qua các dòng. Để khắc phục sự dài dòng này, PHP cho
phép ta sử dụng câu lệnh switch. Câu lệnh này sẽ được
sử dụng để kiểm tra khi muốn xem xét qua nhiều giá trị
của một biến:
PHP Code:
switch ($bien){
Case gia_tri 1:
doan_lenh_1;
Case gia_tri 2:
doan_lenh_2;
Case gia_tri n:
doan_lenh_n;
default:
doan_lenh_khac;
}
Ví dụ:
PHP Code:
22
23. switch ($thu){
case 2:
echo ("Chao co, van, su, ly");
case 3:
echo (" Hoa, Sinh, Dia, GDCD");
case 4:
echo ("KTCN, Van, Toan, Tieng Anh");
case 5:
echo (" Hoa, Toan, Van, Tin");
case 6:
echo ("Toan, Van, Anh, Sinh hoat");
default:
Câu lệnh switch sẽ ước lượng giá trị của biến
$thu, và so sánh nó với giá trị của mệnh đề case. Khi
một giá trị hợp lệ được tìm thấy, nó sẽ thực hiện câu lệnh
tương ứng với giá trị đó. Còn nếu không, nó sẽ tự động
thực hiện câu lệnh trong mệnh đề default. Hãy chú ý
rằng mệnh đề defaul là tuỳ chọn (bạn có thể có nó hoặc
không cần nó)
• Các kiểu dữ liệu trong PHP
PHP có 3 kiểu dữ liệu cơ bản: Integer, double
và string
Kiểu giá trị Integer sử dụng 4 byte của bộ nhớ.
Đây là kiểu giá trị nguyên (không phải là số thực)
và có giá trị nằm trong khoảng từ -2 tỷ đến 2 tỷ.
Kiểu dữ liệu double là kiểu dữ liệu số thực, cho
23
24. phép chứa các số thưc. Kiểu String được sử dụng
để chứa các dữ liệu như là các ký tự văn bản, ký
tự đặc biệt và các chữ số. Dữ liệu kiểu string được
đặt trong cặp dấu ngoặc kép ("") chỉ định một xâu
(hay còn gọi là chuỗi ký tự).
Ví dụ:
2: Kiểu integer;
2.0: kiểu double
"2": Kiểu xâu
"2 gio": Kiểu xâu
E.Xây dựng,thiết kế cài đặt chương trình
1. phpMyadmin là một công cụ để quản lý cơ
sở dữ liệu MySQL và là công cụ hoàn toàn
miễn phí
Tạo database bằng PHP:
24
25. Để tạo mới database các bạn chỉ việc nhập tên cần
tạo vào textbox và nhấn nút “Create” như hình sau :
Tạo table (bảng) :
Sau khi tạo database xong thì các bạn sẽ thấy 1
form nhập liệu như hình sau:
chỉ việc nhập tên table và số trường (field) muốn tạo.
Trong ví dụ này mình đặt tên bảng là “web_members” và
có 4 trường (id, name, lastname, email) . có thể nhìn hình
bên dưới để dễ hiểu hơn
Tạo table bằng cách sử dụng câu
lệnh SQL:
25
26. copy đoạn code sau và dán (paste) nó vào ô
trống và nhấn nút ” Go ” để thực thi câu lệnh
CREATE TABLE `web_members` (
`id` int(4) NOT NULL auto_increment,
`name` varchar(65) NOT NULL default '',
`lastname` varchar(65) NOT NULL default '',
`email` varchar(65) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
Sao lưu ( Export ) database :
click chuột vào tab Export và click vào
tùy chọn như hình bên dưới
26
28. • Kết nối cơ sở dữ liệu bằng PHP:
Bởi vì PHP và MySQL là hai thế giới tách biệt nhau.
muốn dùng PHP để làm việc được với CSDL
phải tạo ra sợi dây liên kết giữa hai
<?
mysql_connect("localhost", "root","") or
die ("Could not connect to database");
mysql_select_db("guestbook") or
die ("Could not select database");
?>
Dòng đầu tiên thực hiện việc kết nối với Database
Server đang nằm trên máy localhost, có username là
root, password là rỗng.
Nếu kết nối thành công, nó sẽ thực hiện bước kế tiếp
là kết nối với database nằm trong đó là guestbook
bằng lệnh mysql_select_db().
các lệnh trên sử dụng thường xuyên cho
mọi kết nối CSDL ên lưu nó vào một tập tin
dbconnect.php sau này cần thì chỉ việc dùng lệnh
include(dbconnect.php);
28
29. ERD:
erd quản lý sinh viên
ERD :
• ERD là lược đồ thể hiện
cấu trúc trừu tượng hóa
của dữ liệu trong tổ chức ,
dựa trên khái niệm thực thể
(entity) ,
và quan hệ ( relationship)
Phân biệt Mô hình ERD và Lược đồ quan hệ
29
30. VPS là gì?
Máy chủ ảo (Virtual Private Server -
VPS) là phương pháp phân chia một máy
chủ vật lý thành nhiều máy chủ ảo. Trong
khi trên 1 server chạy Share Host thì có
thể có hàng trăm tài khoản cùng chạy 1
lúc, nhưng trên server chạy VPS thì con
số chỉ bằng 1/10. Do vây, VPS có hiệu
năng cao hơn Share Host rất nhiều lần.
Đặc điểm về thông số VPS?
Hoạt động hoàn toàn như một server
riêng nên sở hữu một phần CPU riêng,
dung lượng Ram riêng, dung lượng ổ
HDD riêng, địa chỉ Ip riêng và hệ điều
hành riêng.
* Tiết kiệm được rất nhiều chi phí nếu so
sánh với việc thuê một Server riêng.
* Ngoài việc dùng VPS để thiết lập Web
Server, Mail Server cũng như các ứng
dụng khác thì có thể cài đặt để thực hiện
những nhu cầu riêng như truy cập Web
bằng trình duyệt Web trên VPS,
download/upload bittorent với tốc độ
30
31. cao...
* Trong trường hợp VPS bị thiếu tài
nguyên có thể dễ dàng nâng cấp thêm tài
nguyên mà không phải khởi động lại hệ
thống.
* Có thể cài lại hệ điều hành vời thời gian
từ 5-10 phút.
h ng d n chi ti t cách càiướ ẫ ế VPS :
hãy tr domain v IP c a VPSỏ ề ủ b iở
vì khi cài cách này s ng nh p b ngẽ đă ậ ằ
giao th c SSL nênnó không h tr ngứ ỗ ợ đă
nh p b ng IP.ậ ằ
u tiên ng nh p vào VPS vàĐầ đă ậ
cài wget
1 yum install wget
Và cài thêmPerl
yum install perl
Sau ó ch y l nh này t i script cài t v .đ ạ ệ để ả đặ ề
wget http://software.virtualmin.com/gpl/scr
ipts/install.sh
Sau ó ch y ti pđ ạ ế
sh ./install.sh
31
32. n nút Next b t u,ấ để ắ đầ
t o m i MySQL password và nh p domain c aạ ớ ậ ủ
Primary Server thì c nh p bình th ngứ ậ ườ
n nútRecheck ki m tra l i cácthi t l pấ để ể ạ ế ậ .
Tìm kiếm tên chủ sử dụng trong PHP
$csd = $_POST['csd'];
Select * FROM baocao WHERE tenchu ILIKE %$csd%
Tích hợp DNS vào AD database:
Mở DNS -> Forward Lookup Zones -> right click domain name ->
Properties -> tab General -> mục Type -> Change -> check Store
the zone in Active Directory (nếu chưa check) -> OK. Lúc đó ta
thấy dòng chữ Data is stored in Active Directory. Mục Dynamic
updates chọn Secure only (nếu chưa chọn) -> OK
32
33. Backup và Restore MySQL
database
vào phpmyadmin rồi thì các bạn bấm chọn database
cần kiểm tra bên tay trái
33