Hướng dẫn how do i export data from csv to php and mysql? - làm cách nào để xuất dữ liệu từ csv sang php và mysql?

CSV (các giá trị được phân tách bằng dấu phẩy) là định dạng tệp phổ biến nhất để lưu trữ dữ liệu trong văn bản thuần túy để sử dụng ngoại tuyến. Nói chung, một tệp CSV được sử dụng để nhập và xuất dữ liệu để di chuyển dữ liệu giữa các chương trình. Nhập và xuất dữ liệu là tính năng được sử dụng nhiều nhất trong ứng dụng web và định dạng tệp CSV là lựa chọn tốt nhất cho điều đó. is the most popular file format to store data in plain text for offline uses. Generally, a CSV file is used to import and export data for moving data between programs. Import and export data is the most used feature in the web application, and CSV file format is the best choice for that.

Nhập và xuất, cả hai tính năng đều được triển khai dễ dàng với PHP trong ứng dụng web. Trong hướng dẫn trước đây, chúng tôi đã thảo luận về dữ liệu tệp CSV nhập vào cơ sở dữ liệu MySQL bằng PHP. Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách xuất dữ liệu từ cơ sở dữ liệu MySQL sang tệp CSV bằng PHP.export data from MySQL database to CSV file using PHP.

Để chứng minh việc xuất sang chức năng CSV, chúng tôi sẽ xây dựng một tập lệnh ví dụ sẽ xuất dữ liệu thành viên từ cơ sở dữ liệu MySQL và lưu nó trong tệp CSV bằng PHP.Export to CSV functionality, we will build an example script that will export member’s data from the MySQL database and save it in a CSV file using PHP.

  • Tìm nạp dữ liệu từ cơ sở dữ liệu bằng PHP và MySQL.
  • Tạo một tệp CSV trong PHP và lưu dữ liệu trong đó.
  • Xuất dữ liệu MySQL và tải xuống trong tệp CSV bằng PHP.

Tạo bảng cơ sở dữ liệu

Để lưu trữ dữ liệu, một bảng cần được tạo trong cơ sở dữ liệu. SQL sau đây tạo bảng members với một số trường cơ bản trong cơ sở dữ liệu MySQL.

CREATE TABLE `members` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `first_name` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `last_name` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
  `email` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `gender` enum('Male','Female') COLLATE utf8_unicode_ci NOT NULL,
  `country` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
  `created` datetime NOT NULL,
  `status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '1=Active | 0=Inactive',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Cấu hình cơ sở dữ liệu (dbconfig.php)

dbConfig.php được sử dụng để kết nối cơ sở dữ liệu. Chỉ định máy chủ cơ sở dữ liệu ($dbHost), tên người dùng ($dbUsername), mật khẩu ($dbPassword) và tên (

// Database configuration 
$dbHost     "localhost";
$dbUsername "root";
$dbPassword "root";
$dbName     "codexworld"; // Create database connection
$db = new mysqli($dbHost$dbUsername$dbPassword$dbName); // Check connection
if ($db->connect_error) {
    die(
"Connection failed: " $db->connect_error);
}
0) theo thông tin xác thực cơ sở dữ liệu MySQL của bạn.

// Database configuration 
$dbHost     "localhost";
$dbUsername "root";
$dbPassword "root";
$dbName     "codexworld"; // Create database connection
$db = new mysqli($dbHost$dbUsername$dbPassword$dbName); // Check connection
if ($db->connect_error) {
    die(
"Connection failed: " $db->connect_error);
}

Danh sách dữ liệu từ cơ sở dữ liệu MySQL (index.php)

Ban đầu, tất cả các dữ liệu thành viên được tìm nạp từ cơ sở dữ liệu và được liệt kê ở định dạng bảng.

  • Một nút xuất được đặt ở đầu danh sách dữ liệu.
  • Bằng cách nhấp vào nút Xuất, dữ liệu được xuất từ ​​cơ sở dữ liệu và cho phép tải xuống trên ổ đĩa cục bộ dưới dạng tệp CSV.Export button, the data is exported from the database and allow to download on a local drive as a CSV file.
<div class="col-md-12 head">
    <div class="float-right">
        <a href="exportData.php" class="btn btn-success"><i class="dwn">i> Exporta>
    div>
div>

 
<table class="table table-striped table-bordered">
    <thead class="thead-dark">
        <tr>
            <th>#IDth>
            <th>Nameth>
            <th>Emailth>
            <th>Genderth>
            <th>Countryth>
            <th>Createdth>
            <th>Statusth>
        tr>
    thead>
    <tbody>
       // Fetch records from database 
    
$result $db->query("SELECT * FROM members ORDER BY id ASC");
    if(
$result->num_rows 0){
        while(
$row $result->fetch_assoc()){
    
?> <tr> <td>echo $row['id']; ?>td> <td>echo $row['first_name'].' '.$row['last_name']; ?>td> <td>echo $row['email']; ?>td> <td>echo $row['gender']; ?>td> <td>echo $row['country']; ?>td> <td>echo $row['created']; ?>td> <td>echo ($row['status'] == 1)?'Active':'Inactive'?>td> tr> } }else{ ?> <tr><td colspan="7">No member(s) found...td>tr> ?> tbody> table>

Đối với tập lệnh ví dụ này, thư viện Bootstrap được sử dụng để tạo kiểu cho bảng và nút HTML. Vì vậy, bao gồm thư viện Bootstrap CSS và tệp biểu định kiểu tùy chỉnh (nếu có).

<link rel="stylesheet" href="assets/bootstrap/bootstrap.min.css">


<link rel="stylesheet" href="assets/css/style.css">

Xuất dữ liệu sang tệp CSV bằng PHP (ExportData.php)

Tệp

// Database configuration 
$dbHost     "localhost";
$dbUsername "root";
$dbPassword "root";
$dbName     "codexworld"; // Create database connection
$db = new mysqli($dbHost$dbUsername$dbPassword$dbName); // Check connection
if ($db->connect_error) {
    die(
"Connection failed: " $db->connect_error);
}
1 xử lý quá trình tải xuống tệp CSV và Xuất dữ liệu bằng PHP và MySQL.

  • Lấy dữ liệu từ cơ sở dữ liệu MySQL.
  • Tạo một con trỏ tệp bằng hàm fopen ().fopen() function.
  • Chỉ định các cột tiêu đề và đặt dữ liệu vào tệp CSV.
  • Đầu ra mỗi hàng của dữ liệu, dòng định dạng dưới dạng CSV và ghi vào tệp con trỏ.
  • Đặt kiểu xác định loại nội dung và nội dung để buộc trình duyệt tải xuống tệp thay vì hiển thị nó.Content-Type and Content-Disposition to force the browser to download the file rather than display it.
// Load the database configuration file 
include_once 'dbConfig.php'; // Fetch records from database
$query $db->query("SELECT * FROM members ORDER BY id ASC");

if(

$query->num_rows 0){
    
$delimiter ",";
    
$filename "members-data_" date('Y-m-d') . ".csv"; // Create a file pointer
    
$f fopen('php://memory''w'); // Set column headers
    
$fields = array('ID''FIRST NAME''LAST NAME''EMAIL''GENDER''COUNTRY''CREATED''STATUS');
    
fputcsv($f$fields$delimiter); // Output each row of the data, format line as csv and write to file pointer
    
while($row $query->fetch_assoc()){
        
$status = ($row['status'] == 1)?'Active':'Inactive';
        
$lineData = array($row['id'], $row['first_name'], $row['last_name'], $row['email'], $row['gender'], $row['country'], $row['created'], $status);
        
fputcsv($f$lineData$delimiter);
    }
// Move back to beginning of file
    
fseek($f0); // Set headers to download file rather than displayed
    
header('Content-Type: text/csv');
    
header('Content-Disposition: attachment; filename="' $filename '";'); //output all remaining data on a file pointer
    
fpassthru($f);
}
exit;
?>

Xuất dữ liệu sang Excel trong PHP

Sự kết luận

Mã ví dụ này cung cấp một cách dễ dàng để xuất dữ liệu sang tệp CSV trong PHP. Bạn có thể nâng cao hoặc tùy chỉnh chức năng của tập lệnh xuất sang CSV theo nhu cầu của bạn. Nếu bạn muốn thực hiện chức năng xuất này trong tập lệnh phía máy khách, hãy sử dụng JavaScript để thực hiện-Xuất dữ liệu bảng HTML sang CSV bằng JavaScriptExport to CSV script as per your needs. If you want to implement this export functionality in client-side script, use JavaScript to do it – Export HTML Table Data to CSV using JavaScript

Bạn có muốn nhận trợ giúp thực hiện hoặc sửa đổi hoặc tăng cường chức năng của tập lệnh này không? Gửi yêu cầu dịch vụ trả phí

Nếu bạn có bất kỳ câu hỏi nào về kịch bản này, hãy gửi nó cho cộng đồng QA của chúng tôi - đặt câu hỏi

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

Cú pháp với từng bước:..
Tạo kết nối với cơ sở dữ liệu.
Lấy tệp CSV bằng hàm fopen. Nó được sử dụng để mở một tập tin. fopen (tên tệp, chế độ, bao gồm_path, bối cảnh) ở đây: ....
Nhận tệp CSV: Chúng tôi có thể nhận tệp CSV bằng hàm fgetcsv () ..
Truy vấn cơ sở dữ liệu ..

Làm cách nào để xuất tệp CSV trong PHP?

Xuất dữ liệu sang tệp CSV bằng PHP (ExportData ...
Lấy dữ liệu từ cơ sở dữ liệu MySQL ..
Tạo một con trỏ tệp bằng hàm fopen () ..
Chỉ định các cột tiêu đề và đặt dữ liệu vào tệp CSV ..
Đầu ra từng hàng của dữ liệu, dòng định dạng dưới dạng CSV và ghi vào tệp con trỏ ..

Làm cách nào để nhập tệp CSV vào MySQL?

Trong danh sách định dạng, chọn CSV.Thay đổi các tùy chọn cụ thể định dạng.Nếu tệp CSV được phân tách bởi một ký tự không phải là dấu phẩy hoặc nếu có các thông số kỹ thuật khác cho các tệp CSV, chúng ta có thể thay đổi nó trong phần này.Nhấp vào Đi để bắt đầu nhập tệp CSV và dữ liệu sẽ được nhập thành công vào MySQL.

Chúng ta có thể sử dụng PHP và MySQL cùng nhau không?

Với PHP, bạn có thể kết nối và thao tác cơ sở dữ liệu.MySQL là hệ thống cơ sở dữ liệu phổ biến nhất được sử dụng với PHP.MySQL is the most popular database system used with PHP.