Làm cách nào để nhập và xuất tệp csv bằng php và MySQL?

Xuất dữ liệu sang tệp CSV từ cơ sở dữ liệu MySQL bằng PHP;

Đôi khi chúng ta cần xuất dữ liệu vào cơ sở dữ liệu MySQL. Giải pháp tốt nhất để xuất dữ liệu vào cơ sở dữ liệu MySQL bằng tập lệnh PHP ở định dạng tệp CSV

Hướng dẫn này giúp bạn dễ dàng xuất dữ liệu vào bảng cơ sở dữ liệu MySQL trong tệp CSV bằng cách sử dụng tập lệnh PHP

Xuất tệp CSV bằng PHP và MySQL

Chỉ cần làm theo các bước dưới đây và dễ dàng xuất tệp csv vào cơ sở dữ liệu MySQL bằng tập lệnh [mã] PHP

  • Bước 1 – Tạo tệp kết nối cơ sở dữ liệu
  • Bước 2 – Xuất dữ liệu MySQL sang tệp CSV Mã PHP

Bước 1 – Tạo tệp kết nối cơ sở dữ liệu

Trong bước này, bạn sẽ tạo một tên tệp db. php và cập nhật mã bên dưới vào tệp của bạn

Đoạn mã dưới đây được sử dụng để tạo kết nối cơ sở dữ liệu MySQL trong PHP. Khi chúng tôi chèn dữ liệu biểu mẫu vào cơ sở dữ liệu MySQL, chúng tôi sẽ bao gồm tệp này

Bước 2 – Xuất dữ liệu MySQL sang tệp CSV Mã PHP

Ở bước này bạn cần tạo 1 tên file export. php và cập nhật mã bên dưới vào tệp của bạn

Đoạn mã dưới đây được sử dụng để lấy dữ liệu từ cơ sở dữ liệu MySQL và xuất nó thành tệp CSV hoặc tải xuống. Tên tệp mẫu là mẫu người dùng. csv

Phần kết luận

Trong hướng dẫn này, chúng ta đã học cách xuất dữ liệu vào cơ sở dữ liệu MySQL trong CSV bằng mã PHP

Đây là một ví dụ rất cơ bản và dễ dàng về xuất dữ liệu vào cơ sở dữ liệu MySQL trong tệp CSV bằng mã PHP

Dữ liệu ứng dụng web được lưu trữ, truy cập và trao đổi giữa các thành phần khác nhau bằng định dạng CSV. Định dạng tệp phổ biến nhất CSV [giá trị được phân tách bằng dấu phẩy] để lưu trữ dữ liệu ở dạng văn bản thuần túy

Bạn cũng có thể tham khảo các hướng dẫn khác về Xuất dữ liệu bằng PHP

  • Xuất dữ liệu sang Excel bằng PHP và MySQL
  • Xuất dữ liệu sang CSV và tải xuống bằng PHP và MySQL
  • Nhập tệp CSV vào MySql bằng PHP
  • Xuất dữ liệu bảng HTML sang Excel, CSV, PNG và PDF bằng Plugin jQuery
  • Xuất dữ liệu jQuery Datatable sang PDF, Excel, CSV và Copy

Cách nhập và xuất dữ liệu CSV trong PHP

Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách nhập và xuất dữ liệu từ cơ sở dữ liệu MySQL sang/từ tệp CSV bằng PHP. Tôi sẽ không tạo biểu mẫu HTML để tải tệp CSV lên, tôi sẽ cung cấp tập lệnh PHP sẽ tải và lưu dữ liệu tệp CSV vào PHP

Tạo kết nối cơ sở dữ liệu MySQL

Hãy tạo một Bảng nhân viên trong Cơ sở dữ liệu MySQL, bảng này sẽ sử dụng để nhập và xuất dữ liệu CSV vào cơ sở dữ liệu.
Câu SQL sau tạo bảng nhân viên với một số trường cơ bản trong cơ sở dữ liệu MySQL. Bảng nhân viên chứa thông tin nhân viên cần xuất.

SQL sau tạo bảng nhân viên với một số trường cơ bản trong cơ sở dữ liệu MySQL. Bảng nhân viên chứa thông tin nhân viên cần xuất

CREATE TABLE `employees` [
 `id` int[11] NOT NULL AUTO_INCREMENT,
 `name` varchar[100] COLLATE utf8_unicode_ci NOT NULL,
 `age` int[11] NOT NULL,
 `salary` int[11] NOT NULL,
 PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Bây giờ, tôi sẽ tạo một kết nối. php và thêm đoạn mã dưới đây vào tệp này. Đoạn mã dưới đây giúp kết nối với cơ sở dữ liệu MySQL, Đồng thời sử dụng để chọn cơ sở dữ liệu bằng PHP và MySQL

Liên kết được tài trợ
//DB details
 $dbHost     = 'localhost';
 $dbUsername = 'root';
 $dbPassword = '*';
 $dbName     = 'phpflow';//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName]; 
//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName];

if[$db->connect_error]{

     die["Unable to connect database: " . $db->connect_error];

 }

Xuất sang tệp CSV bằng PHP

Hãy xuất dữ liệu từ cơ sở dữ liệu bằng PHP và MySQL. Chúng tôi sẽ tạo tệp

0 và viết mã để lấy dữ liệu từ bảng nhân viên và lưu nó vào emp. tệp csv. Chúng tôi sẽ lưu trữ tất cả dữ liệu đã xuất của nhân viên vào tệp 
1

File này sẽ có các bước sau để xuất dữ liệu vào MySQL

  • Lấy dữ liệu từ bảng nhân viên
  • Mở tệp bằng hàm
    2
  • Xác định các cột tiêu đề và đặt chúng vào tệp CSV
  • Đọc từng hàng một của dữ liệu và ghi vào con trỏ tệp
  • Chúng tôi sẽ buộc trình duyệt tải xuống tệp CSV bằng cách sử dụng
    3 và 
    4

Hãy thêm đoạn mã dưới đây vào tệp

0

query["SELECT * FROM employees ORDER BY id DESC"];

if[$query->num_rows > 0]{
    $delimiter = ",";
    $filename = "employee.csv";

    //create a file pointer for write
    $f = fopen['php://memory', 'w'];

    //set column headers
    $fields = array['ID', 'Name', 'Age', 'Salary'];
    fputcsv[$f, $fields, $delimiter];

    //write to file
    while[$row = $query->fetch_assoc[]]{
        $lineData = array[$row['id'], $row['name'], $row['age'], $row['salary']];
        fputcsv[$f, $lineData, $delimiter];
    }
    fseek[$f, 0];

    //set headers to download file
    header['Content-Type: text/csv'];
    header['Content-Disposition: attachment; filename="' . $filename . '";'];

    fpassthru[$f];
}
exit;

Nhập dữ liệu CSV vào Cơ sở dữ liệu MySQL

Hãy nhập dữ liệu tệp

6 vào cơ sở dữ liệu MySQL. Tôi sẽ sử dụng bảng nhân viên để chèn dữ liệu từ tệp CSV. Tạo tệp 
//DB details
 $dbHost     = 'localhost';
 $dbUsername = 'root';
 $dbPassword = '*';
 $dbName     = 'phpflow';//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName]; 
//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName];

if[$db->connect_error]{

     die["Unable to connect database: " . $db->connect_error];

 }
0 và thêm mã bên dưới

Tôi giả sử bạn có biểu mẫu HTML tải lên tệp và muốn tạo tập lệnh để lưu trữ dữ liệu tệp CSV vào cơ sở dữ liệu MySQL

File này sẽ có các bước sau để xuất dữ liệu vào MySQL

  • Tạo con trỏ tệp đã đọc bằng hàm
    2
  • Phân tích từng dòng dữ liệu tệp CSV bằng hàm
    //DB details
     $dbHost     = 'localhost';
     $dbUsername = 'root';
     $dbPassword = '*';
     $dbName     = 'phpflow';//Create connection and select DB
     $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName]; 
    //Create connection and select DB
     $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName];
    
    if[$db->connect_error]{
    
         die["Unable to connect database: " . $db->connect_error];
    
     }
    2
  • Đã chèn dữ liệu CSV vào bảng nhân viên

Dữ liệu CSV được lưu trữ trong bộ nhớ bằng phương pháp

//DB details
 $dbHost     = 'localhost';
 $dbUsername = 'root';
 $dbPassword = '*';
 $dbName     = 'phpflow';//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName]; 
//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName];

if[$db->connect_error]{

     die["Unable to connect database: " . $db->connect_error];

 }
2. Vòng lặp while dùng để lưu dữ liệu vào biến
//DB details
 $dbHost     = 'localhost';
 $dbUsername = 'root';
 $dbPassword = '*';
 $dbName     = 'phpflow';//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName]; 
//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName];

if[$db->connect_error]{

     die["Unable to connect database: " . $db->connect_error];

 }
4. Sau khi quá trình hoàn tất, dữ liệu được sắp xếp theo cột và chèn vào bảng
//DB details
 $dbHost     = 'localhost';
 $dbUsername = 'root';
 $dbPassword = '*';
 $dbName     = 'phpflow';//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName]; 
//Create connection and select DB
 $db = new mysqli[$dbHost, $dbUsername, $dbPassword, $dbName];

if[$db->connect_error]{

     die["Unable to connect database: " . $db->connect_error];

 }
5

Làm cách nào để nhập tệp CSV vào cơ sở dữ liệu MySQL bằng php?

Cú pháp với Step by Step. .
Tạo kết nối tới cơ sở dữ liệu.

Chủ Đề