Hướng dẫn php mysqli export to csv - php mysqli xuất sang csv
Tôi đã cố gắng trong nhiều ngày để xuất từ một truy vấn một số giá trị trong Show
1) Mã này tạo cơ sở dữ liệu, bảng và chèn các giá trị:
2) Mã này dành cho xuất trong
Tôi đang sử dụng phiên bản Xamp này:
Phiên bản này tạo ra một số vấn đề cho mã MySQL, đó là lý do tại sao tôi thích mã trong MySQLI. Cám ơn rất nhiều! Hướng dẫn này giúp nhập dữ liệu CSV vào MySQL và xuất dữ liệu từ tệp MySQL sang CSV. Tệp CSV được sử dụng để nhập và xuất dữ liệu để di chuyển/trao đổi thông tin dữ liệu giữa các ứng dụng web. Bạn có thể sử dụng API REST hoặc ứng dụng web để nhập/xuất dữ liệu CSV. 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. CSV (Giá trị được phân tách bằng dấu phẩy) Đị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. Bạn cũng có thể kiểm tra các hướng dẫn khác về dữ liệu xuất với 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 lên tệp CSV, 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 MySQLHãy để tạo bảng nhân viên trong cơ sở dữ liệu MySQL, việc sử dụng dữ liệu CSV nhập và xuất vào cơ sở dữ liệu. SQL sau đây 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 giữ thông tin nhân viên cần được xuất khẩu. SQL sau đây tạo ra một 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 giữ thông tin nhân viên cần được xuất khẩu. 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 tệp Connection.php và thêm mã dưới đây vào tệp này. Mã dưới đây giúp kết nối với cơ sở dữ liệu MySQL, cũng sử dụng để chọn cơ sở dữ liệu bằng PHP và MySQL. //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 tệp CSV bằng PHP bằng cách sử dụng PHPHãy để dữ liệu xuất từ cơ sở dữ liệu bằng PHP và MySQL. Chúng tôi sẽ tạo tệp Tệp này sẽ có các bước sau để xuất dữ liệu vào MySQL.
Hãy để thêm mã dưới đây vào tệp 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 MySQLHãy cùng nhập dữ liệu tệp 4 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 5 và thêm mã bên dưới.Tôi giả sử bạn có tệp tải lên biểu mẫu HTML và muốn tập lệnh để lưu trữ dữ liệu tệp CSV vào cơ sở dữ liệu MySQL. Tệp này sẽ có các bước sau để xuất dữ liệu vào MySQL.
Đọc từng cái một mỗi hàng 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 connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. " |