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 
              
                                            
                                
            
 
            
                 24 trang
24 trang | 
Chia sẻ: luyenbuizn | Lượt xem: 2006 | Lượt tải: 1 
              
            Bạn đang xem trước 20 trang nội dung tài liệu Bài thực hành – Thiết kế web - Bài 08: PHP với cơ sở dữ liệu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
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): 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
- 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: 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
- ðể 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:\wamp\www\ 
 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(); 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
 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 
Trang TrangChu.php 
trangchuphp 
Index.php timki m.php dangnhap.php 
xltimsach.php 
xlXoa.php ThemSach.php CapNhat.php 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
 DangNhap.php 
Giao diện: 
Code: 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
 TimKiem.php 
Giao diện: 
Code: 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
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: 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
 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": 
Input data 
First Name: 
Last Name: 
<?php 
 if (isset($_GET['Name'])){ 
 echo "Hello " . $_GET['Name'][0] . " " . $_GET['Name'][1]; 
 } 
?> 
Bài thực hành – Thiết kế web 
GVHD TS. Vũ ðức Lung 
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: 
UserName 
Password 
<input type="submit" 
value="Submit"> 
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"; 
} 
?> 
            Các file đính kèm theo tài liệu này:
 baith08_php_voi_csdl_8935.pdf baith08_php_voi_csdl_8935.pdf