Khóa học php learnvern

Nếu bạn là người mới trong giai đoạn lập trình viên, việc biết cách kết nối PHP với cơ sở dữ liệu MySQL rất hữu ích. Bạn có thể tùy chỉnh, xem hoặc quản lý bảng được tạo trong cơ sở dữ liệu MySQL. Bài này sẽ chỉ cho bạn cách dễ dàng nhất để thực hiện công việc này

  • Tạo cơ sở dữ liệu MySQL
  • Viết mã để kết nối PHP với cơ sở dữ liệu MySQL
  • Kiểm tra kết nối PHP với MySQL có thành công không
  • Lời kết

Tạo cơ sở dữ liệu MySQL

Bước này cần thiết trong trường hợp nếu bạn chưa có cơ sở dữ liệu MySQL. Tại Hostinger, cơ sở dữ liệu MySQL có thể được tạo dễ dàng trong phần Cơ sở dữ liệu MySQL như các bước bên dưới

  • Tìm Cơ sở dữ liệu MySQL trong phần Cơ sở dữ liệu
  • Điền thông tin cần thiết và nhấn nút Tạo

    Hướng dẫn dùng mysql is trong PHP

Đối với cPanel, các bước tạo cơ sở dữ liệu cũng tương tự

Vui lòng lưu lại các thông tin về cơ sở dữ liệu MySQL bạn mới tạo để sử dụng cho bước tiếp theo. Đừng quên lưu cả tên người dùng cơ sở dữ liệu và mật khẩu tên người dùng nữa nhé bạn

Viết mã để kết nối PHP với cơ sở dữ liệu MySQL

Hiện có 2 phương thức để kết nối tới cơ sở dữ liệu MySQL là MySQLi và PDO

MySQLi viết tắt của MySQL Cải tiến, nó bổ sung tính năng trong giao diện của cơ sở dữ liệu MySQL. MySQLi có tính chất thủ tục và hướng đối tượng, yếu tố đầu tiên để sử dụng cho phiên bản cũ hơn của MySQL

MySQL gốc chia nhiệm vụ theo tuyến tính, từng bước một, khiến việc điều chỉnh khó khăn vì bạn phải sửa mã từ trên cùng. Trong khi đó, MySQLi xem dữ liệu như một bộ đối tượng với các chức năng, cho phép người dùng thêm hoặc xóa dữ liệu một cách dễ dàng

Hàm mysql_ đã bị phản đối (lỗi thời) và không nên sử dụng nữa vì thiếu an toàn và không còn được phát triển hay bảo trì nữa

PDO viết tắt của cụm đối tượng dữ liệu PHP. Khác biệt chính giữa PDO và MySQLi là PDO Hỗ trợ nhiều loại cơ sở dữ liệu khác nhau (MySQL, MS SQL, Postgre DB) trong cùng một tập lệnh, bạn chỉ cần viết các hàm liên quan đến dữ liệu một lần. PDO là ‘hướng đối tượng’ (hướng đối tượng), kết nối giữa trang web và cơ sở dữ liệu được tạo bởi các biến đối tượng

Một thay đổi quan trọng là cả 2 phương pháp đều hỗ trợ 'prepared Statements', giúp tăng cường khả năng chống SQL injection khi kết nối mysql với php để chỉnh sửa thông tin

Bạn cũng cần phải điền đúng tên máy chủ hoặc tên máy chủ. Tại Hostinger, tên máy chủ MySQL cũng được đặt trong mục Cơ sở dữ liệu MySQL. Trong ví dụ này, tên máy chủ sẽ là. máy chủ cục bộ. Thông thường đây là tên bạn sử dụng khi tải tập lệnh PHP lên cùng máy chủ với cơ sở dữ liệu

Ngược lại, nếu bạn kết nối tới cơ sở dữ liệu từ một máy từ xa (máy của bạn chẳng hạn), bạn cần phải sử dụng địa chỉ IP của máy chủ MySQL đó. Để biết thêm thông tin, bạn có thể cần liên hệ với nhà cung cấp, và đừng quên chọn dịch vụ lưu trữ tốt nhất có hỗ trợ kỹ thuật, để họ cung cấp cho bạn thông tin chính xác về tên máy chủ cần điền là gì

Use MySQLi to connect script PHP to MySQL

Làm theo các bước sau để sử dụng MySQLi connection PHP script and MySQL

  1. Chuyển tới Trình quản lý tệp -> public_html
  2. Tạo tệp mới bằng cách nhấp vào tệp biểu tượng trên menu thanh
  3. Save it to name databaseconnect. php. You can change this name name but the end of the memory must be php
  4. Nhấp đúp chuột vào nó để mở và dán đoạn mã sau vào. Thay thế 4 value after

Giải thích code MySQLi used to connect MySQL database

Phương pháp chính của tập lệnh này là hàm mysqli_connect(). Đây là hàm PHP dùng để thực thi kết nối tới một máy chủ MySQL

Ở đầu mã, chúng ta thấy có các biến báo cáo và giá trị được cấp cho chúng. Thông thường, chúng ta cần có bốn biến để thiết lập kết nối cơ sở dữ liệu trong mã php. $servername, $database, $username và $password. Trong mã này, chúng tôi đã đặt thông tin cơ sở dữ liệu chính xác cho các biến này, để sau khi sử dụng hàm mysqli_connect() nó sẽ sử dụng các giá trị nhập vào

If your connection fail, function die() was thi. Nó sẽ hủy tập lệnh và cho kết quả lỗi mà ta đặt ra. Mặc định nó sẽ xuất hiện Lỗi kết nối và kèm theo một thông báo lỗi để biết lỗi ở đâu

Nếu kết nối thành công, phần mã sau khi kết nối thành công sẽ được thực thi

Dòng cuối cùng của lệnh mysqli_close, chỉ sử dụng đơn giản để đóng kết nối giữa tập lệnh PHP và cơ sở dữ liệu thủ công. Nếu không chỉ định, kết nối MySQL sẽ tự động đóng lại khi tập lệnh kết thúc

Use PDO to connect PHP with MySQL database

Phương pháp khác để kết nối PHP với MySQL đang sử dụng PDO. Phương pháp này cũng tương tự như cách sử dụng MySQLi, nhưng hơi khác

  1. Trong public_html, tạo một tệp có tên pdoconfig. php and enter code after into. Đừng quên thay đổi những thông tin cơ sở dữ liệu. Lưu và Đóng sau khi hoàn tất.
  2. Create next a file has databaseconnect. php in the same directory but paste code after into. Nếu bạn đặt tên tệp trước tệp khác, hãy đảm bảo rằng bạn đã thay đổi giá trị tương ứng trong yêu cầu_once.
    getMessage());
    }

Giải thích về code PDO

Một kết nối cơ sở dữ liệu PDO cần tạo 'đối tượng PDO' với Tên nguồn dữ liệu (DSN), tên người dùng và mật khẩu

DSN định nghĩa loại cơ sở dữ liệu của bạn, tên cơ sở dữ liệu, và bất kỳ thông tin nào cần thiết khác. Đây là những biến và giá trị chúng ta đặt trong dbconfig. php file, used one times by code require_once in databaseconnect. php

Khi tạo đối tượng PDO bằng kết nối cơ sở dữ liệu, bạn sẽ thấy mã 'try...catch...'. Có nghĩa là kịch bản này sẽ thử kết nối với MySQL. Nếu có vấn đề, mã trong phần 'bắt' sẽ chạy. Bạn có thể sử dụng khối bắt để hiển thị mã báo lỗi hoặc mã chay khác nếu quá trình thử nghiệm thất bại

Nếu kết nối thành công, nó sẽ hiển thị “Connected to $dbname at $host Successfully. ” Tuy nhiên, nếu thử kết nối giữa PHP với MySQL không thành công, mã bắt sẽ hiển thị lỗi kết nối đơn giản và tập lệnh tiếp tục

Kiểm tra kết nối PHP với MySQL có thành công không

Để kiểm tra kết nối có thành công không, hãy truy cập vào định dạng tên miền. tên miền/kết nối cơ sở dữ liệu của bạn. php. Nếu tên tệp PHP của bạn khác, hãy thay đổi nó cho phù hợp

Bạn sẽ nhận được kết quả là “Đã kết nối thành công” hoặc biến thể của thông báo này nếu không gặp lỗi

Giờ nếu kết nối PHP với MySQL không thành công, bạn sẽ thấy thông báo lỗi hơi khác giữa MySQLi và PDO

Sai mật khẩu

Lỗi này xảy ra khi mật khẩu hoặc bất kỳ thông tin đăng nhập nào trong mã PHP bị sai

Nếu bạn thấy lỗi “Truy cập bị từ chối” hoặc “Không thể kết nối với cơ sở dữ liệu” với “(sử dụng mật khẩu. CÓ)” ở cuối, điều đầu tiên bạn cần làm là kiểm tra thông tin cơ sở dữ liệu. Có thể có lỗi đánh máy hoặc thiếu thứ gì đó

Cannot connect to MySQL Server

Nếu bạn gặp lỗi “Không thể kết nối với máy chủ MySQL trên ‘máy chủ’ (110)” trong MySQLi, có nghĩa là tập lệnh này không nhận được phản hồi từ máy chủ. Điều này xảy ra khi bạn đặt “máy chủ” thay vì “localhost” trong $servername và tên này không khớp với thông tin máy chủ

Lỗi mã trong PDO sẽ là “Kết nối không thành công. SQLSTATE[Hy000] [2002]” kèm theo thông tin rằng không tìm thấy My SQL. Cách sửa lỗi kết nối PHP với MySQL cũng tương tự như trên

Dĩ nhiên, hãy luôn chú ý quy tắc vàng để sửa lỗi. luôn kiểm tra nhật ký lỗi của trang web

Nhật ký (nhật ký lỗi) có thể được đặt trong cùng thư mục nơi tập lệnh chạy. Ví dụ, nếu bạn đang chạy tập lệnh trong public_html, bạn sẽ thấy error_log trong cùng thư mục

Lời kết

Trong bài hướng dẫn này, chúng tôi đã hướng dẫn cơ bản cách kết nối php với cơ sở dữ liệu MySQL bằng cách sử dụng MySQLi và PHP Data Objects (PDO)

Bạn có thể sử dụng tài liệu này kết hợp với các tập lệnh nâng cao khác, nhưng hãy thực hiện bước này thành công vì kết nối cơ sở dữ liệu trong php trước là bước đầu tiên trong quá trình thao tác với cơ sở dữ liệu

Hãy để lại bình luận cho chúng tôi biết nếu bạn gặp bất kỳ vấn đề nào khi sử dụng hướng dẫn này hoặc vấn đề khi kết nối PHP với MySQL

Hải G. là chuyên gia quản lý vận tải, điều hành các trang web dịch vụ. Anh có nhiều năm kinh nghiệm về VPS, Hosting, kỹ thuật SEO, CMS. Đặc biệt yêu thích WordPress và đã sử dụng nó hơn 5 năm nay. Sở thích của anh là đọc, viết blog, đi du lịch và tư vấn cho các bạn khởi nghiệp