1. Bài th c hành – Thi t k web
Bài 08:
PHP v i CSDL
M c tiêu
– T o trang web ñ ng v i PHP & MySQL
Yêu c u
– Hoàn thành các bài th c hành trư c
– N m b t các ki n th c cơ b n v PHP và MySQL
Các bư c th c hành:
I. T o và cài ñ t CSDL:
- Kh i ñ ng WampServer
- T c a s khi b m chu t vào bi u tư ng c a WampServer, chon PhpMyAdmin
- Trang web PhpAdmin hi n ra có d ng (chú ý n u không hi n ra có th do port
không ñúng, theo bài trư c ph i ñánh port s 81 thêm vào):
GVHD TS. Vũ ð c Lung
2. Bài th c hành – Thi t k web
- Trong m c Create new database c a trang PhpAdmin tao CSDL mang tên
ebookDB v i utf8_unicode_ci và b m nút Create:
- Sau khi t o CSDL ta vào m c Import và ch n file bookstoreDB.sql ñ import
CSDL ñã t o vào trong ebookDB.
- B m vào nút Go. N u import thành công ta s th y bên trái c a trang PhpAdmin
có danh sách 4 b ng c a CSDL như d ng sau:
GVHD TS. Vũ ð c Lung
3. Bài th c hành – Thi t k web
- ð ki m tra, b m vào b t kỳ b ng nào r i b m vào SQL, sau ñó GO s hi n ra d
li u c a b ng ñó
II. T o k t n i ñ n CSDL :
Do ña s các trang web ñ u k t n i ñ n CSDL, do ñó ta s ñóng gói vi c k t n i v i CSDL
trong 1 class riêng ñ d dàng hơn trong vi c s d ng.
T o file DataProvider.php Lưu DataProvider.php trong thư m c C:wampwww
Khai báo class DataProvider trong DataProvider.php:
<?php
class DataProvider
{
public static function executeQuery($sql)
{
include_once('db.inc');
include_once('error.inc');
// Tao ket noi CSDL
if (!($connection = mysql_connect($hostName,$username,$password)))
die ("couldn't connect to localhost");
if (!(mysql_select_db($databaseName,$connection)))
showError();
// Thiet lap font Unicode
if (!(mysql_query("set names 'utf8'")))
showError();
// Thuc thi cau truy van
if (!($result = mysql_query($sql, $connection)))
showError();
// Dong ket noi CSDL
if (!(mysql_close($connection)))
showError();
GVHD TS. Vũ ð c Lung
4. Bài th c hành – Thi t k web
return $result;
}
}
Trong ñó file db.inc có:
<?php
$hostName = "localhost";
$databaseName = "ebookDB";
$username = "root";
$password = ""; //hoac la "root" tuy theo cai dat
?>
File error.inc ch a hàm x lý l i:
<?php
function showError( )
{
die("Error " . mysql_errno( ) . " : " . mysql_error( ));
}
?>
Các trang web nào c n k t n i CSDL ta khai báo:
<?php
require 'DataProvider.php';
?>
III. Xây d ng các trang
1. C u trúc site
trangchuphp
timkiem.php
Index.php dangnhap.php
xltimsach.php
xlXoa.php ThemSach.php CapNhat.php
Trang TrangChu.php
GVHD TS. Vũ ð c Lung
5. Bài th c hành – Thi t k web
DangNhap.php
Giao di n:
Code:
GVHD TS. Vũ ð c Lung
6. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
7. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
8. Bài th c hành – Thi t k web
TimKiem.php
Giao di n:
Code:
GVHD TS. Vũ ð c Lung
9. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
10. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
11. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
12. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
13. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
14. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
15. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
16. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
17. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
18. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
19. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
20. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
21. Bài th c hành – Thi t k web
GVHD TS. Vũ ð c Lung
22. Bài th c hành – Thi t k web
Bài t p 1:
Dùng PHP thi t k trang web in ra màn hình như sau:
My SQL là gì?
MySQL là m t ph n m m qu n tr CSDL mã ngu n m , mi n phí n m trong nhóm
LAMP (Linux - Apache -MySQL - PHP)
Bài t p 2:
Vi t trang PHP hi n th dãy s t 1 ñ n 100 sao cho s ch n là ch in ñ m, s l là ch in
thư ng.
K t qu : 1 2 3 4….., 100
Hư ng d n: S d ng vòng l p for, 1 bi n ñ m i, toán t %
Bài t p 3:
GVHD TS. Vũ ð c Lung
23. Bài th c hành – Thi t k web
Vi t trang PHP hi n th thông tin sau:
STT Tên sách Tác gi
1 Tên sách 1 Tác gi 1
2 Tên sách 2 Tác gi 2
…. …. ….
10 Tên sách 10 Tác gi 10
Bài t p 4:
Thi t k webform có d ng sau:
Sau khi nh p h và tên vào và b m Submit thì cho k t qu ngay t i trang ñó:
Code m u file "names.php":
<HTML>
<HEAD>
<TITLE>Input data</TITLE>
</HEAD>
<BODY>
<FORM ACTION="names.php" NAME="myform" METHOD="GET">
First Name: <INPUT TYPE="TEXT" NAME="Name[]" SIZE=20><br>
Last Name: <INPUT TYPE="TEXT" NAME="Name[]" SIZE=20><br>
<INPUT TYPE="SUBMIT" VALUE="Submit">
</FORM>
<?php
if (isset($_GET['Name'])){
echo "Hello " . $_GET['Name'][0] . " " . $_GET['Name'][1];
}
?>
</BODY>
GVHD TS. Vũ ð c Lung
24. Bài th c hành – Thi t k web
</HTML>
Bài t p 5:
Vi t 1 chương trình ki m tra username và password c a ngư i truy c p. V i username và password
m c ñ nh là :
Username: admin
Password: 12345
+ N u nh p ñúng thì tr v k t qu là : "Chào m ng, admin ñ n v i website".
+ Ngư c l i n u sai s tr v thông tin "C nh báo : Username ho c password c a b n không chính
xác. Vui lòng nh p l i".
M u trích d n t file nh p li u login.php:
<form method="POST" action="check.php">
<div align="left"><p><font face="tahoma">UserName</font>
<input type="text" name="username" size="14">
<br>
<div align="left"><p><font face="tahoma">Password</font>
<input type="password" name="pw" size="14"><BR><BR><input type="submit"
value="Submit"></p>
</div></form>
T file ki m tra có tên là check.php
$user=$_POST['username'];
$pass=$_POST['pw'];
if ($user == "admin" AND $pass == "12345")
{
echo "Chào m ng, $user ñ n v i website";
}
else
{
echo "C nh báo : Username ho c password c a b n không chính xác. Vui lòng nh p l i";
}
?>
GVHD TS. Vũ ð c Lung