1. Trang chủ
  2. » Công Nghệ Thông Tin

MySQL & PHP doc

20 167 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 298,76 KB

Nội dung

MySQL & PHP 1 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Sơ lược về web  Các trang web hiển thị trên trình duyệt được mô tả bằng ngôn ngữ HTML  HTML là một ngôn ngữ đánh dấu, dùng các thẻ (tag) và thuộc tính (attribute) để mô tả các đối tượng trong văn bản cần hiển thị  Mỗi đối tượng được bao bởi một thẻ mở <tag> và một thẻ đóng </tag>. Nếu trong đối tượng không chứa gì, có thể viết gộp thẻ đóng và thẻ mở làm một: <tag/>  Thuộc tính được định nghĩa trong thẻ mở: <tag attr1="value1" attr2="value2"> </tag>  Các đối tượng có thể được định nghĩa lồng nhau  Ví dụ:  <p style="color:red">text</p>: mô tả một đoạn văn bản  <img src="banner.jpg" width="250px" height="100px" />: mô tả một bức ảnh 2 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Cấu trúc một trang web  Một trang web là một file văn bản có cấu trúc cơ bản như sau:  <html> <head> <title>Tiêu đề trang web</title> </head> <body> <p>Nội dung</p> <img src="logo.jpg" /> </body> </html>  Các thẻ cơ bản:  <html>: chứa toàn bộ các phần tử của trang web  <head>: chứa các thông tin về văn bản như tiêu đề, từ khoá,…  <title>: tiêu đề trang web  <body>: phần nội dung của trang web 3 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Web nội dung tĩnh  Các trang web bằng HTML có nội dung cố định  Chỉ thay đổi khi người quản trị cập nhật  Người dùng không thể tương tác và thay đổi nội dung của trang web  Không thể tuỳ biến nội dung trang web tuỳ theo thời gian, người dùng,… hay các điều kiện khác  Web nội dung động:  Lập trình để sinh ra mã HTML bằng các ngôn ngữ web 4 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Web Service (Apache, IIS,…) Web Browser (Firefox, Chrome, IE, Webkit,…) network Cơ chế hoạt động của web nội dung động 5 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Web Script (PHP, ASP, JSP,…) Web Service (Apache, IIS,…) Web Browser (Firefox, Chrome, IE, Webkit,…) Database (MySQL, MSSQL,…) network network Giới thiệu PHPPHP  Một ngôn ngữ rất phổ biến để lập trình web  Ngôn ngữ dạng script khá gần với C  Không sử dụng con trỏ hay địa chỉ  Nguyên tắc hoạt động:  Sinh ra mã HTML của trang web bằng các hàm print(), echo()  Chạy trực tiếp không qua biên dịch  Mã lệnh PHP nằm trong thẻ <?php // ?> 6 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Ví dụ một PHP script <?php $title = 'Tiêu đề trang web'; $logo_img = 'logo.jpg'; ?> <html> <head> <title><?php print($title); ?></title> </head> <body> <p>Nội dung</p> <img src="<?php print($logo_img); ?>" /> </body> </html> 7 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Một số khái niệm của PHP  Biến:  Dùng dấu $ trước tên, không cần khai báo, không có kiểu cố định  $x = 100; $x = 'Value: ' . $x;  Mảng:  for ($i=0; $i<10; $i++) $a[$i] = 20*$i;  Chuỗi ký tự: dùng ' ' hoặc " "  $s1 = '$100'; $s2 = "Price: $s1"; // = "Price: $100" print('<b>' . $s2 . '</b>'); 8 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội MySQL với PHPPHP cung cấp sẵn một thư viện để truy cập các CSDL sử dụng MySQL  Các tính năng và cáh sử dụng tương tự như thư viện MySQL bằng ngôn ngữ C  Thiết lập kết nối  Thực hiện các câu truy vấn  Lấy kết quả  Kiểm tra lỗi 9 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Tham số của trang web với phương thức GET  Khái niệm:  Tương tự như việc các chương trình có tham số từ dòng lệnh, các trang web cũng có các tham số được cho ở URL 10 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội  PHP cho phép sử dụng các tham số này thông qua mảng $HTTP_GET_VARS (với chỉ số là tên của tham số)  Ví dụ: print('ID: ' . $HTTP_GET_VARS['ID'] . '<br/>' . 'Name: ' . $HTTP_GET_VARS['Name'] . '<br/>' . 'Sex: ' . $HTTP_GET_VARS['Sex']); [...]... 'myweb'; $conn = mysql_ connect($server, $usr, $pwd); if ($conn == null) exit('Database error'); mysql_ select_db($db_name); // Do stuff mysql_ close($conn); EE4509, EE6133 – HK2 2011/2012 TS Đào Trung Kiên – ĐH Bách khoa Hà Nội Kiểm tra lỗi  Dùng các hàm sau để lấy thông tin về lỗi:    Mã lỗi: int mysql_ errno($conn) Thông điệp lỗi: string mysql_ error($conn) Ví dụ:  13 $conn = mysql_ connect($server,... truy vấn, gọi hàm sau để lấy từng hàng kết quả:   array mysql_ fetch_array($result, $type) $type: kiểu chỉ số mảng     Cuối cùng, kết thúc và giải phóng bộ nhớ đệm chứa kết quả:   MYSQL_ ASSOC: chỉ số bằng tên thuộc tính MYSQL_ NUM: chỉ số bằng số thứ tự MYSQL_ BOTH: cả hai chỉ số mysql_ free_result($result) Di chuyển con trỏ đọc kết quả:  15 mysql_ data_seek($result, $row_num) EE4509, EE6133 – HK2... $conn); if ($result == FALSE) handle_error($conn); $row = mysql_ fetch_array($result, MYSQL_ NUM); $num_rows = mysql_ num_rows($result); print('Number of rows: ' $num_rows ''); while ($row = mysql_ fetch_array($result, MYSQL_ ASSOC)) { print('ID: ' $row['ID'] ', ' 'Nickname: ' $row['NICKNAME'] ', ' 'Name: ' $row['NAME'] ''); } mysql_ free_result(result); 17 EE4509, EE6133 – HK2 2011/2012... hàng:    int mysql_ num_rows($result) ID của dữ liệu mới được thêm (câu lệnh INSERT):    int mysql_ num_fields($result) int mysql_ insert_id($result) ID phải được định nghĩa với thuộc tính AUTO_INCREMENT Số hàng đã bị thay đổi (câu lệnh INSERT, UPDATE,…)  16 int mysql_ affected_rows($result) EE4509, EE6133 – HK2 2011/2012 TS Đào Trung Kiên – ĐH Bách khoa Hà Nội Ví dụ - SELECT $result = mysql_ query('select...Sử dụng MySQL trong PHP 11 EE4509, EE6133 – HK2 2011/2012 TS Đào Trung Kiên – ĐH Bách khoa Hà Nội Thiết lập và đóng kết nối  Thiết lập kết nối:    mysql_ connect($server, $username, $password) Trả về kết nối được thiết lập Chọn CSDL làm việc:   Đóng kết nối:   mysql_ select_db($db_name) mysql_ close($conn) Ví dụ:  12 $server = '192.168.1.50'; $usr... Bách khoa Hà Nội Ví dụ - INSERT if (mysql_ query("insert into USER(username, password, level) values('superhero', 'chipchip', 3)", $conn) == FALSE) handle_error($conn); print (mysql_ affected_rows($conn) ' rows added'); print('ID of inserted user: ' mysql_ insert_id($conn)); 18 EE4509, EE6133 – HK2 2011/2012 TS Đào Trung Kiên – ĐH Bách khoa Hà Nội Ví dụ - UPDATE if (mysql_ query('update USER set level... handle_error($conn); print (mysql_ affected_rows($conn) ' rows updated'); 19 EE4509, EE6133 – HK2 2011/2012 TS Đào Trung Kiên – ĐH Bách khoa Hà Nội Bài tập 1 2 3 20 Định nghĩa một quan hệ SinhVien, sau đó viết một chương trình PHP thêm vào CSDL một sinh viên và in ra ID của sinh viên vừa được thêm Viết chương trình PHP nhập ID của một sinh viên và in ra thông tin của sinh viên đó Viết chương trình PHP nhập tên của... Ví dụ:  13 $conn = mysql_ connect($server, $usr, $pwd); if ($conn == null) { print('Error ' mysql_ errno($conn) ': ' mysql_ error($conn)); exit(1); } EE4509, EE6133 – HK2 2011/2012 TS Đào Trung Kiên – ĐH Bách khoa Hà Nội Thực hiện câu truy vấn  Để thực hiện câu truy vấn, dùng hàm:   Các tham số:    mysql_ query($query, $conn) $query: chuỗi ký tự chứa câu truy vấn $conn: kết nối đã được thiết . $logo_img = 'logo.jpg'; ?> <html> <head> <title>< ?php print($title); ?></title> </head> <body> <p>Nội dung</p> <img.  <html> <head> <title>Tiêu đề trang web</title> </head> <body> <p>Nội dung</p> <img src="logo.jpg" /> </body>. mysql_ fetch_array($result, MYSQL_ ASSOC)) { print('ID: ' . $row['ID'] . ', ' . 'Nickname: ' . $row['NICKNAME'] . ', ' . 'Name: ' . $row['NAME']

Ngày đăng: 28/06/2014, 05:20

Xem thêm