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

Bài giảng phát triển ứng dụng web bằng PHP phần 6 giới thiệu về PHP và cơ sở dữ liệu MySQL

47 797 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 47
Dung lượng 3,39 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Câu 5: Chọn biết kết quả của câu truy vấn từ bảng tblPRODUCT sau:select count*from tblPRODUCT where productid='bo01' and productid='pe01'; A.. Câu 2: Cho cấu trúc bảng tblProduct thuộc d

Trang 1

• GVHD: Dương Khai Phong

• Email: khaiphong@gmail.com

• Website: http://khaiphong.tk

http://course.uit.edu.vn

Trang 2

1/ Giới thiệu tổng quan Web

2/ Ngôn ngữ HTML và JavaScript

3/ Ngôn ngữ PHP căn bản

4/ Các đối tượng trong PHP

5/ PHP và hướng đối tượng

6/ PHP và cơ sở dữ liệu MySQL

7/ PHP và AJAX

8/ PHP và các hệ thống mã nguồn mở 9/ Triển khai ứng dụng PHP

Trang 3

PHẦN 5:

Trang 4

1 Giới thiệu

2 Các vấn đề cơ bản về DBMS MySQL

3 PHP và các thao tác cơ bản với DBMS MySQL

4 Các vấn đề lưu ý trong xử lý CSDL

Trang 5

 Most applications that you will work with or encounter will involve the use of some sort of data storage container In some cases, you will need nothing more than files for this purpose, but often, that container is some sort of database engine PHP provides access to a great number of different database systems, many of which are relational in nature and can be interrogated using Structured Query Language (SQL).

grasp on SQL, as well as the means to connect to and interact with databases from PHP.

connectivity from PHP using PHP Data Objects (PDO).

interfaces (ref: page 132 of ebook “phparchitects Zend PHP

5 Certification Study Guide”)

Trang 6

MODELs FOR STORING DATA

DBMSs?

Trang 8

int or integer Signed integer number, 32 bits in length smallint Signed integer number, 16 bits in length real Signed floating-point number, 32 bits in length float Signed floating-point number, 64 bits in length char Fixed-length character string

varchar Variable-length character string

Trang 9

CREATE DATABASE <dbname>

CREATE SCHEMA <dbname>

CREATE TABLE <tablename> (

<col1name> <col1type> [<col1attributes>], [

<colnname> <colntype> [<colnattributes>]]

)

Trang 10

INSERT INTO <tablename> VALUES (<field1value>[, , <fieldnvalue>])

INSERT INTO <tablename>(<field1>[, , <fieldn>]) VALUES

(<field1value>[, , <fieldnvalue>])

DELETE FROM <tablename>;

DELETE FROM <tablename> WHERE <conditions>;

UPDATE <tablename> SET field = value;

UPDATE <tablename>

SET field1 = value1,…, fieldn = valuen WHERE <conditions>;

Trang 11

GROUP BY < field1value>[, , <fieldnvalue>] HAVING < conditions>

ORDER BY <field1value>[, , <fieldnvalue>] ]

Trang 13

Câu 1: Câu truy vấn nào sau đây gây ra lỗi:

A SELECT column1, column2, column2 FROM tablename;

B SELECT * FROM tablename WHERE columnname LIKE

%keyword%;

C SELECT * FROM tablename WHERE column1 LIKE 'keyword' AND

column2 LIKE 'keyword';

D SELECT DISTINCT column1 FROM tablename ORDER BY column1;

Trang 14

Câu 2: Chọn phát biểu sai:

A Ký hiệu “=” là một phép gán giá trị trong mệnh đề where

B INT là một kiểu dữ liệu trong DBMS MySQL

C Có thể thêm thuộc tính cho một bảng khi bảng đó đã chứa dữ liệu

D Các từ khóa trong câu truy vấn của DBMS MySQL không phân biệt

chữ hoa hay chữ thường

Trang 15

Câu 3: Cho bảng emplyees và các bộ giá trị như sau:

empid name managerid

Chọn phát biểu đúng từ câu truy vấn sau

select count(managerid) from employees

Trang 16

Câu 4: Chọn lệnh cần điền cho từ key:

CREATE TABLE tblPRODUCT_1 key

A SELECT * FROM tblPRODUCT_1;

B (tblPRODUCT_1 varchar(20));

C SELECT * FROM tblPRODUCT_2;

D Tất cả đều sai

Trang 17

Câu 5: Chọn biết kết quả của câu truy vấn từ bảng tblPRODUCT sau:

select count(*)from tblPRODUCT

where productid='bo01' and productid='pe01';

A 1

B 2

C Câu lệnh thực thi báo lỗi

D Câu lệnh thực thi nhưng không trả về kết quả

tblPRODUCT

productid productname price

Trang 19

b Các bước thao tác CSDL trong PHP:

Bước 1: Kết nối với CSDL

Bước 2: Xây dựng câu truy vấn dữ liệu

Bước 3: Thực thi câu truy vấn

Bước 4: Xử lí kết quả

Bước 5: Ngắt kết nối với CSDL

Trang 21

//Không kết nối được, thoát ra và báo lỗi

die ("không nết nối được vào MySQL server");

Trang 22

$strSQL = " UPDATE Users SET Password = 'abc'

WHERE UserName = 'admin' "

$strSQL = " SELECT * FROM Users WHERE

UserName = 'admin' "

SELECT UPDATE

Trang 23

$strSQL = "SELECT * FROM Users";

$result = mysql_query ($strSQL,$conn);

?>

Trang 24

Hiển thị dữ liệu trả về

 Sử dụng hàm

$row = mysql_fetch_assoc ($result)

$row = mysql_fetch_row ($result)

Số lượng FIELD

$num = mysql_num_fields ($result);

Truy cập đến từng FIELD echo $row["Username"];

Trang 26

c Ví dụ xây dựng đối tượng xử lý các bước thao tác CSDL:

Trang 27

c Ví dụ xây dựng đối tượng xử lý các bước thao tác CSDL:

<?php // slide 02

class cProccessDB{

// … continue

private function init($notice=false){

$this->conn = mysql_connect ($this->server,

Trang 28

c Ví dụ xây dựng đối tượng xử lý các bước thao tác CSDL:

Trang 29

c Ví dụ xây dựng đối tượng xử lý các bước thao tác CSDL:

<?php // slide 04

class cProccessDB{

// … continue

function select($sql){

$result = mysql_query ($sql,$this->conn);

while($row = mysql_fetch_row ($result)){

echo "$row[0] $row[1]<br>";

} }

function insert($sql){

$result = mysql_query ($sql,$this->conn);

if (!$result) echo "Lỗi insert: ".mysql_error($this->conn);

Trang 30

a MySQL và font Unicode:

Trang 31

a MySQL và font Unicode:

Trang 32

a MySQL và font Unicode:

CREATE TABLE SinhVien (

MaSV VARCHAR(8) NOT NULL,

NgaySinh DATE,

PRIMARY KEY(MaSV) ) COLLATE utf8_general_ci;

Trang 33

a MySQL và font Unicode:

Ví dụ:

CREATE TABLE SinhVien (

MaSV VARCHAR(8) NOT NULL , HoTen VARCHAR(50) COLLATE utf8_general_c i NOT NULL , NgaySinh DATE ,

);

Trang 34

a MySQL và font Unicode:

Ví dụ:

<head>

< meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Trang quản lý thông tin SV</title>

</head>

// Thêm dòng này sau hàm

mysql_connect ($server, $user, $pass):

mysql_query (' SET NAMES "utf8" ');

Trang 35

b MySQL và mã hóa dữ liệu:

Name Description

AES_DECRYPT() Decrypt using AES

AES_ENCRYPT() Encrypt using AES

COMPRESS() Return result as a binary string

DECODE() Decodes a string encrypted using ENCODE()

DES_DECRYPT() Decrypt a string

DES_ENCRYPT() Encrypt a string

ENCODE() Encode a string

ENCRYPT() Encrypt a string

MD5() Calculate MD5 checksum

OLD_PASSWORD() Return the value of the pre-4.1 implementation of

PASSWORD

PASSWORD() Calculate and return a password string

SHA1(), SHA() Calculate an SHA-1 160-bit checksum

SHA2() Calculate an SHA-2 checksum

UNCOMPRESS() Uncompress a string compressed

UNCOMPRESSED_LENGTH() Return the length of a string before compression

Trang 36

ĐH CÔNG NGHỆ THÔNG TIN http://sites.google.com/site/khaiphong

36

Trang 38

Câu 1: Chọn phát biểu đúng thay cho câu lệnh chứa từ key ở dòng 1 (giả sử: server chạy cục bộ ở localhost, user và password của MySQL: root và pass):

Trang 39

Câu 2: Cho cấu trúc bảng tblProduct thuộc database 'db_php_mysql' như sau

CREATE TABLE tblPRODUCT(

ProdID varchar(50) primary key,

A Bảng tblProduct được chèn thêm 2 bộ dữ liệu ('p01','book') và ('p01','pen')

B Đoạn lệnh thông báo lỗi "Database error"

C Bảng tblProduct được chèn thêm 1 bộ dữ liệu ('p01', 'book ')

D Tất cả đều sai

Trang 40

Câu 3: Cho cấu trúc bảng tblAccount thuộc database 'db_php_mysql' như sau

CREATE TABLE tblACCOUNT(

UserName varchar(50) primary key,

3 $query = "insert into tblAccount values('abc','pass')";

4 $query = "insert into tblAccount values(‘abc',‘123')";

5 $result = mysql_query($query);

?>

A Bảng tblAccount được chèn thêm 2 bộ dữ liệu ('abc','pass') và (‘abc',‘123')

B Bảng tblAccount được chèn thêm 1 bộ dữ liệu (‘abc',‘123')

C Đoạn lệnh thông báo lỗi "Database error"

D Đoạn lệnh báo lỗi ở dòng 4 do trùng khóa ‘abc’

Trang 41

Câu 4: Cho cấu trúc và dữ liệu bảng tblAccount thuộc database 'db_php_mysql' như sau

CREATE TABLE tblACCOUNT(

UserName varchar(50) primary key,

A "select password from tblaccount";

B "select password(“abc”)+password(“def”) from tblaccount";

C "select count(password) from tblaccount";

D "select sum(password) from tblaccount";

UserName Password

Trang 42

Câu 5: Cho cấu trúc và dữ liệu bảng tblAccount thuộc database 'db_php_mysql' như sau

CREATE TABLE tblPRODUCT(

ProdID varchar(50) primary key,

Trang 43

Câu 6: Cho cấu trúc và dữ liệu bảng tblAccount thuộc database 'db_php_mysql' như sau

CREATE TABLE tblACCOUNT(

UserName varchar(50) primary key,

Password varchar(50)

);

Cho biết kết quả của đoạn lệnh sau (giả sử: server chạy cục bộ ở localhost, user của MySQL

là root và không đặt password):

A Đoạn lệnh xuất kết quả là 24

B Đoạn lệnh thông báo lỗi Fatal error

C Đoạn lệnh xuất cảnh báo Warning

D Tất cả đều sai

UserName Password

Trang 44

Câu 7: Cho cấu trúc và dữ liệu bảng tblAccount thuộc database 'db_php_mysql' như sau

CREATE TABLE tblPRODUCT(

ProdID varchar(50) primary key,

ProdName varchar(50),

Price float

);

Cho biết kết quả của đoạn lệnh sau (giả sử: server chạy cục bộ ở localhost, user của MySQL

là root và không đặt password):

<?php

1 $db = mysql_connect('localhost','root','') or die("Database error");

2 mysql_select_db('db_php_mysql', $db);

3 $rs = mysql_query("SELECT count(*) FROM tblPRODUCT ");

4 if($rs) {echo mysql_num_rows($rs);}

?>

A Đoạn lệnh xuất kết quả là 1

B Đoạn lệnh xuất kết quả là 2

C Đoạn lệnh thông báo lỗi dòng 4

D Tất cả đều sai

Trang 45

Câu 8: Cho cấu trúc và dữ liệu bảng tblAccount thuộc database 'db_php_mysql' như sau

CREATE TABLE tblPRODUCT(

ProdID varchar(50) primary key,

Trang 46

Câu 9: Cho cấu trúc và dữ liệu bảng tblAccount thuộc database 'db_php_mysql' như sau

CREATE TABLE tblACCOUNT(

UserName varchar(50) primary key,

Password varchar(50)

);

Cho biết kết quả của đoạn lệnh sau (giả sử: server chạy cục bộ ở localhost, user của MySQL

là root và không đặt password):

A Đoạn lệnh thông báo lỗi

B Đoạn lệnh xuất kết quả null

C Đoạn lệnh xuất kết quả là abc def

D Đoạn lệnh xuất kết quả là UserName Password

UserName Password

Trang 47

Câu 10: Cho cấu trúc và dữ liệu bảng tblAccount thuộc database 'db_php_mysql' như sau

CREATE TABLE tblACCOUNT(

UserName varchar(50) primary key,

Password varchar(50)

);

Cho biết kết quả của đoạn lệnh sau (giả sử: server chạy cục bộ ở localhost, user của MySQL

là root và không đặt password):

A Đoạn lệnh xuất kết quả là abc

B Đoạn lệnh xuất kết quả là 12

C Đoạn lệnh xuất kết quả là def

D Đoạn lệnh xuất kết quả là 34

UserName Password

Ngày đăng: 03/05/2016, 22:03

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w