Chương 3.5 (phần 3) giúp người học hiểu về PHP-MySQL. Nội dung trình bày cụ thể gồm có: Để kết nối PHP – MySQL, đặc điểm, kết nối (MySQLi Object-Oriented), Die() – hàm hiển thị thông báo và dừng xử lý, kết nối (MySQLi Procedural),..
Phần mềm Nguồn Mở (Open-Source Software) Võ Đức Quang Khoa CNTT-Đại học Vinh Chương 3: Một số phần mềm nguồn mở Mindmap PHP Giới thiệu PHP Biến, hằng Kiểu liệu, phép toán Lệnh điều khiển Hàm PHP kết hợp với forms Server Side PHP-MySQL PHP-MySQL Để kết nối PHP – MySQL o MySQLi extension (close(); o MySQLi Procedural mysql_close($conn); o PDO $conn = null; PHP-MySQL Truy cập CSDL o mysql_select_db(database name", $con); Thực thi câu lệnh SQL o $result=mysql_query(“SQL_Statement”); Tùy theo câu lệnh SQL mà ta có kết trả tương ứng o Select : trả mảng record o Câu lệnh khác : true/false tùy theo thành công hay không Chuyển kết liệu truy vấn thành dạng mảng o $row = mysql_fetch_array($result) PHP-MySQL Các bước thao tác o o o o o Kết nối PHP/MySQL: mysql_connect() Chọn CSDL để làm việc: mysql_select_db() Xử lý câu truy vấn: mysql_query() Phân tích, xử lý kết truy vấn: mysql_fetch_array() Đóng kết nối PHP/MySQL: mysql_close() PHP-MySQL Ví dụ: Câu lệnh SQL: Select… $sql = “Select … ”; $result = mysql_query($sql); if(!$result) { echo “Record not found!”; } else { while($row = mysql_fetch_array($result)){ echo $row[„firstField'] " " $row[„secondField']; echo ""; } } // else mysql_close($con); // đóng kết nối PHP-MySQL Câu lệnh SQL: INSERT, UPDATE… $sql=“Insert into table_name(field_list) values(value_list); $result=mysql_query($sql); if(!$result) {echo mysql_error(); // xử lý tiếp;} else { //xử lý …} Việc sử dụng câu lệnh Upadte tương tự Lỗi xảy vi phạm ràng buộc toàn vẹn liệu Sử dụng hàm die() hợp lý để điều khiển xử lý PHP-MySQL Hàm mysql_fetch_array Cú pháp: mysql_fetch_array(data [, array_type]); o Array_type có thể là: MySQL_Assoc : mảng kết hợp, key mảng field_name MySQL_Num : key mảng chỉ số MySQL_Both : hai khả trên, kiểu mặc định Ví dụ: while($row = mysql_fetch_array($result)){ echo $row[0] " " $row[1]; echo ""; } Tiếng Việt PHP - Phần không sử dụng CSDL MySQL, phải đảm bảo: Lưu tệp với mã UTF-8 (*) Khai báo phần head - Phần sử dụng CSDL MySQL, phải đảm bảo: Khai báo câu lệnh mysql_query(“SET NAMES ‘utf8’”) trước câu lệnh mysql_query($sql) với $sql câu lệnh Select Ví dụ: $sql = “Select … ”; mysql_query(“SET NAMES ‘utf8’”); (*) $result = mysql_query($sql); if(!$result) , echo “Record not found!”; else { while($row = mysql_fetch_array($result)){ echo $row*‘firstField'+ " " $row*‘secondField'+.””;} PHP-MySQL Một số ý: o Để xử lý truy vấn với ghi Tiếng Việt, trước truy vấn phải sử dụng SET NAMES ‘utf-8’ mysql_query("SET NAMES 'utf8'"); o Cần viết chính xác Tên trường bảng CSDL duyệt mysql_fetch_array (phân biệt chữ hoa, thường) ... Tiếng Việt PHP - Phần không sử dụng CSDL MySQL, phải đảm bảo: Lưu tệp với mã UTF-8 (*) Khai báo phần head - Phần sử dụng CSDL.. .Chương 3: Một số phần mềm nguồn mở Mindmap PHP Giới thiệu PHP Biến, hằng Kiểu liệu, phép toán Lệnh điều khiển Hàm PHP kết hợp với forms Server Side PHP-MySQL PHP-MySQL Để... mysqli_connect_error()); } PHP-MySQL Kết nối (MySQLi Procedural) Port mặc định: 3306 PHP-MySQL Kết nối (PDO) PHP-MySQL Đóng kết nối o MySQLi Object-Oriented $conn->close(); o MySQLi Procedural