Kết nối csdl trong html

     

Sử dụng mysql extension (sẽ chấm dứt cách tân và phát triển với ko được khulặng dùng) Sử dụng mysqli extension (hỗ trợ tự PHPhường 5 trlàm việc lên, là phiên bản đổi mới của mysql extension) Sử dụng PDO (PHPhường Data Object)

 PDO là gì?

PDO (PHP Data Object) là một database abstraction layer, rất có thể áp dụng các extension không giống nhau nhằm tiếp xúc với những cơ sở dữ liệu khác biệt (Oracle, DB2, Microsoft SQL server, Postgress SQL..) .PDO có thể được thực hiện để lập trình sẵn theo cả phía thủ tục cùng theo phía đối tượng người sử dụng.

Bạn đang xem: Kết nối csdl trong html

Đang xem: Kết nối csdl trong html

*
*

Ứng cùng với từng cơ sở dữ liệu khác nhau PDO đang áp dụng những các loại driver không giống nhau nhằm thao tác làm việc với DataBase. Các lệnh SQL được truyền vào PDO sẽ tiến hành các driver này đưa lịch sự câu lệnh Squốc lộ tương ứng cùng với cơ sở dữ liệu đang được sử dụng. Chính vị vậy Khi thực hiện PDO chúng ta cũng có thể dễ dãi đưa sang 1 hệ quản trị cơ sở dữ liệu không giống cơ mà không nhất thiết phải viết lại mã.

Kết nối đến DataBase trong PDO

$dsn = “mysql:host=localhost;dbname=ten_csdl”;// Set options$options = array(PDO::MYSQL_ATTR_INIT_COMMAND => “SET NAMES utf8”,PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION);// Create a new PDO instanacetry $db = new PDO($dsn, “user_dang_nhap_csdl”, “password_csdl”, $options);// Catch any errorscatch (PDOException $e) eđến $e->getMessage();exit(); Để rất có thể hiển thị tiếng việt Khi làm việc cùng với cơ sở dữ liệu MySquốc lộ họ yêu cầu chạy lệnh “SET NAMES utf8” Khi liên kết cho DataBase MySQL. Giá trị PDO::ERRMODE_EXCEPTION trong ở trong tính PDO::ATTR_ERRMODE sẽ giúp đỡ PDO nỉm ra nước ngoài lệ Lúc chạm chán lỗi đồng thời tạo ra PHP warning. Tuy nhiên chúng ta cũng có thể áp dụng try catch để bắt lỗi nhằm mục tiêu bịt giấu các thông báo lỗi.

lúc thao tác làm việc cùng với cơ sở dữ liệu vào PHP, đối với các lệnh SQL có tsay đắm số hễ bọn họ tránh việc truyền câu lệnh Squốc lộ trực tiếp thông qua chuỗi nỗ lực bởi vì vậy chúng ta phải áp dụng Prepared Statement để tách bị tiến công Squốc lộ Injection.

Xem thêm: 1001 Hình Ảnh Đại Diện Đẹp Nhất Facebook, Zalo, Top Ảnh Avatar Đẹp

Cnhát dữ liệu vào cơ sở dữ liệu thông qua PDO

//Khởi sinh sản Prepared Statement$stmt = $db->prepare(“INSERT INTO users (name, email, age) values (:name, :mail, :age)”);$stmt->bindParam(“:name”, “Nguyen Van A”);$stmt->bindParam(“:mail”, “email_address”);$stmt->bindParam(“age”, 22);$stmt->execute();/*****************Cách viết khác *********************/$stmt = $db->prepare(“INSERT INTO users (name, email, age)values (:name, :mail, :age)”);$data = array(“name”=>”Nguyen Van A”, “mail”=>”email_address”, “age”=> 22);$stmt->execute($data);Trước tiên họ sẽ tạo một Prepared Statement thông qua hàm prepare(). Ở phía trên họ không truyền cực hiếm thẳng mang lại name, mail và age. Tgiỏi vào đó bọn họ vẫn thực hiện các place holder để giữ nơi mang đến quý hiếm của các thay đổi trên. Tiếp theo chúng ta tiến hành gắn quý hiếm cho các place holder vào câu lệnh Prepared Statement trải qua hàm bindParam($tên_place_holder, $giá_trị_của_place_holder). Cuối thuộc chúng ta triển khai prepared statement trải qua lệnh execute().

Truy vấn cơ sở dữ liệu cùng với PDO:

lúc hiểu dữ liệu từ bỏ database, PDO đã trả về dữ liệu theo cấu tạo mảng (array) hoặc đối tượng người sử dụng (object) thông qua các cách thức sau:

fetchAll(): trả về một mảng đựng toàn bộ các sản phẩm vào tập kết quả trả về (result set). Một số quý giá thông dụng của fetch_mode: PDO::FETCH_BOTH (default): trả về tài liệu dạng mảng với key là tên của cột và cả số thiết bị tự của cột. PDO::FETCH_ASSOC: trả về tài liệu dạng mảng cùng với key là tên gọi cột của bảng trong DataBase. PDO::FETCH_NUM: trả về dữ liệu dạng mảng cùng với key là số sản phẩm từ bỏ của cột. PDO::FETCH_OBJ: trả về một đối tượng người tiêu dùng của stdClass với thương hiệu thuộc tính vào đối tượng người sử dụng là tên của cột. PDO::FETCH_CLASS: Gán giá trị của từng cột đến từng ở trong tính (property/attribute) của một lớp được hướng dẫn và chỉ định trước. fetch(): trả về hàng kế tiếp từ result mix. fetchColumn( ): trả về 1 quý hiếm của cột được hướng dẫn và chỉ định trong mặt hàng tiếp đến của result mix.

ví dụ như truy hỏi vấn dữ liệu với PDO

$stmt = $db->prepare(“SELECT name, gmail, age from users”);//Thiết lập vẻ bên ngoài tài liệu trả về$stmt->setFetchMode(PDO::FETCH_ASSOC);$stmt->execute();$resultSet = $stmt->fetchAll();/*Trong ngôi trường hòa hợp không setFetchMode() chúng ta có thể sử dụng$resultSet = $stmt->fetchAll(PDO::FETCH_ASSOC);*/foreach ($resultSet as $row) emang lại $row . ”“;echo $row . ”“;emang đến $row . ”“;Do tài liệu mang về thông qua FETCH_ASSOC là dữ liệu dưới dạng mảng 2D đề nghị họ sẽ thực hiện vòng lặp for nhằm coi sóc qua từng sản phẩm cùng lôi ra giá trị của từng phần tử thông qua thương hiệu của cột bên trong CSDL.

Xem thêm: Cách Tải Instagram Cho Máy Tính Và Điện Thoại Đơn Giản Nhất, Cách Đăng Ảnh Lên Instagram Từ Máy Tính


Trả lời Hủy

E-Mail của bạn sẽ ko được hiển thị công khai. Các trường phải được đánh dấu *

Bình luận

Tên *

E-Mail *

Trang web

Lưu tên của tôi, email, cùng website vào trình coi sóc này cho lần comment sau đó của tớ.


#messagemessage/message^messageKhông gửi được. Máy chủ đang bình luận dĩ nhiên status_text (mã status_code). Vui lòng liên hệ với công ty cải tiến và phát triển của đơn vị giải pháp xử lý biểu chủng loại này nhằm cải thiện thông báo này. Tìm phát âm thêm/message


#messagemessage/message^messageCó vẻ nhỏng chúng ta đang gửi thành công xuất sắc. Ngay cả Lúc sever đánh giá OK, khối hệ thống hoàn toàn có thể vẫn không cách xử lý việc gửi. Vui lòng tương tác cùng với bên trở nên tân tiến của đơn vị chức năng giải pháp xử lý biểu mẫu mã này nhằm nâng cao thông tin này. Tìm gọi thêm/message