Bao gồm Nhập và Xuất cực kỳ hữu ích cho thông tin trên bảng phân đoạn. Tính năng Nhập cho phép khách hàng chuyển và nhúng nhiều thông tin vào cơ sở dữ liệu. Bằng cách sử dụng tính năng Nhập, thông tin đại chúng có thể được nhúng vào cơ sở dữ liệu chỉ trong một tích tắc. Tiện ích giá vé cho phép khách hàng tải xuống danh sách thông tin bảng và lưu vào tài liệu để sử dụng không kết nối. Bằng cách sử dụng tính năng Xuất, nhiều bản ghi có thể được tải xuống ở một vị trí tài liệu
Phần lớn, vị trí tài liệu CSV được sử dụng để nhập và lấy thông tin trong ứng dụng web. Bản ghi CSV [chất lượng được phân tách bằng dấu phẩy] lưu trữ thông tin ở cấu hình nội dung đơn giản và di chuyển thông tin giữa các dự án. Tính năng nhập và giá vé có thể được hiện thực hóa một cách hiệu quả bằng tài liệu CSV sử dụng PHP và MySQL. Nhập thông tin bản ghi CSV vào cơ sở dữ liệu/Xuất thông tin sang tài liệu CSV, cả hai đều có thể được kết hợp với PHP và MySQL. Trong bài tập hướng dẫn này, chúng tôi sẽ cho bạn biết cách tốt nhất để nhập và lấy thông tin bản ghi CSV trong cơ sở dữ liệu bằng cách sử dụng PHP và MySQL
Tạo bảng cơ sở dữ liệu
Để lưu trữ thông tin của bộ phận, một bảng phải được tạo trong cơ sở dữ liệu. Truy vấn SQL sau đây tạo bảng người dùng với một số trường cần thiết trong cơ sở dữ liệu MySQL
2
3
4
5
6
7
8
9
10
11
12
13
14
15
TẠO BẢNG `người dùng` [
`id` int[11] KHÔNG NULL AUTO_INCREMENT,
`tên` varchar[50] THUỘC utf8_unicode_ci KHÔNG NULL,
`email` varchar[50] THUỘC utf8_unicode_ci KHÔNG NULL,
`điện thoại` varchar[15] THU TẬP utf8_unicode_ci KHÔNG NULL,
`đã tạo` ngày giờ KHÔNG NULL,
`đã sửa đổi` ngày giờ KHÔNG NULL,
`trạng thái` enum['Đang hoạt động','Không hoạt động'] THUỘC utf8_unicode_ci KHÔNG NULL MẶC ĐỊNH ' Đang hoạt động',
CHÍNH CHÍNH KEY [`id`]
] CÔNG DỤNG=InnoDB MẶC ĐỊNH CHARSET=utf8 THU TẬP=utf8_unicode_ci;
Trong tập lệnh nhập và xuất ví dụ, chức năng sau sẽ được triển khai
- Lấy dữ liệu của người dùng từ cơ sở dữ liệu
- Nhập dữ liệu tệp CSV vào cơ sở dữ liệu bằng PHP
- Xuất dữ liệu sang CSV bằng PHP từ Cơ sở dữ liệu
Tạo tệp cấu hình cơ sở dữ liệu [dbconfig. php]
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
// Cấu hình cơ sở dữ liệu
$dbHost = "localhost";
$dbUsername = "root";
$dbPassword = "";
$dbName = "Trang web hướng dẫn";
// Tạo kết nối cơ sở dữ liệu
$db = mới mysqli[$dbHost, $dbUsername, $dbPassword, $dbName];
// Kiểm tra kết nối
if [$db->connect_error] {
die["Kết nối không thành công. " . $db->connect_error ];
}
?>
dbconfig. php 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 [$dbName] theo thông tin đăng nhập cơ sở dữ liệu MySQL của bạn
Mục lục
Tạo tệp chính để Tải tệp CSV lên và Tải xuống [chỉ mục. php]
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
Cách đến Nhập và Xuất CSV Tệp sử dụng PHP và MySql
?php
i lớp="plus" > Nhập
>< /a> Xuất< /a>
>
#ID
Tên
Điện thoại
Trạng thái
?phptruy vấn["CHỌN * TỪ người dùng ĐẶT HÀNG BẰNG id DESC"];
nếu[$result->num_rows > 0]{
while[$row = $result->fetch_assoc[]]{
?>
?php
?php
?php
?php
?php
?php
Không Bản ghi tìm thấy. . . < /tr>
?php
function formToggle[ID]{
var phần tử = tài liệu.getElementById[ID];
if[phần tử. kiểu dáng. hiển thị === "không"]{
phần tử. phong cách. hiển thị = "chặn";
}else{
phần tử. phong cách. hiển thị = "không";
}
}
Tạo [nhập tệp csv. php ] để nhập dữ liệu CSV vào cơ sở dữ liệu
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php
// Nạp file cấu hình cơ sở dữ liệu
bao gồm_ một lần 'dbconfig. php';
if[isset[$_POST['importSubmit']]]{
// Các loại mime được phép
$csvMimes = mảng['văn bản/giá trị được phân tách bằng dấu phẩy', 'văn bản/được phân tách bằng dấu phẩy -values', 'application/octet-stream', 'application /vnđ. ms-excel', 'application/x-csv', ' text/x-csv', 'text/csv', ' ứng dụng/csv', 'application/excel', 'application/ đồng. msexcel', 'text/plain'];
// Xác thực xem tệp đã chọn có phải là tệp CSV hay không
nếu[. trống[$_FILES[ 'file']['name']] && in_array[$_FILES['file']['type'], $csvMimes]]{
// Nếu tệp được tải lên
nếu[is_uploaded_file[$_FILES['file']['tmp_name']]]< /a>{
// Mở tệp CSV đã tải lên ở chế độ chỉ đọc
$csvFile = fopen[$_FILES['file']['tmp_name'],< /a> 'r'];
// Bỏ qua dòng đầu tiên
fgetcsv[$csvFile];
// Phân tích dữ liệu từ tệp CSV theo từng dòng
trong khi[[$line = fgetcsv[$csvFile]] . == SAI]{
// Nhận dữ liệu hàng
$tên = $dòng[0];
$email = $dòng[1];
$điện thoại = $dòng[2];
$trạng thái = $line[3];
// Kiểm tra xem thành viên đã tồn tại trong cơ sở dữ liệu với cùng một email hay chưa
$truy vấn trước = "CHỌN id TỪ người dùng Ở ĐÂU email = '". $dòng[1] . "'";
$Kết quả trước đó = $db->truy vấn[$truy vấn trước];
if[$prevResult->num_rows > 0]{
// Cập nhật dữ liệu thành viên trong cơ sở dữ liệu
$db->truy vấn["CẬP NHẬT tên người dùng SET = '". $tên. "', điện thoại = '". $điện thoại. "', status = '". $trạng thái. "', đã sửa đổi = NOW[] WHERE email = '". $email. "'"];
}khác{
// Chèn dữ liệu thành viên vào cơ sở dữ liệu
$db->truy vấn["CHÈN VÀO người dùng [tên, email, điện thoại, đã tạo, đã sửa đổi, trạng thái] GIÁ TRỊ ['". $tên. "', '". $email. "', '". $điện thoại. "', NOW[], NOW[], '". $trạng thái. "']"];
}
}
// Đóng tệp CSV đã mở
fclose[$csvFile];
$qstring = '?status=succ' ;
}khác{
$qstring = '?status=err' ;
}
}else{
$qstring = '?status=invalid_file' ;
}
}
// Chuyển hướng đến trang danh sách
tiêu đề["Vị trí. mục lục. php". $qstring];
?>
Tạo [ exportcsvfile. php ] để xuất dữ liệu thành tệp CSV
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
// Nạp file cấu hình cơ sở dữ liệu
bao gồm_ một lần 'dbconfig. php';
$tên tệp = "users_" . ngày['Y-m-d'] . ". csv";
$dấu phân cách = ",";
// Tạo con trỏ tệp
$f = fopen['php. //bộ nhớ', 'w'];
// Đặt tiêu đề cột
$trường = mảng['ID', 'Tên', ' Email', 'Điện thoại', 'Đã tạo', 'Trạng thái'];
fputcsv[$f, $trường, $dấu phân cách];
// Lấy bản ghi từ cơ sở dữ liệu
$kết quả = $db->truy vấn["CHỌN * TỪ người dùng ĐẶT HÀNG THEO id DESC"];
if[$kết quả->num_rows > 0]{
// Xuất từng hàng dữ liệu, định dạng dòng dưới dạng csv và ghi vào con trỏ tệp
trong khi[$hàng = $kết quả->fetch_assoc[]]{
$dữ liệu dòng = mảng[$hàng['id'], $hàng['name'], $row< /a>['email'], $hàng['phone'], $hàng['đã tạo'< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]< a i=34>]], $hàng['status']];
fputcsv[$f, $dữ liệu dòng, $delimiter];
}
}
// Di chuyển về đầu file
fseek[$f, 0];
// Đặt tiêu đề để tải xuống tệp thay vì hiển thị
tiêu đề['Loại nội dung. văn bản/csv'];
header['Bố trí nội dung. tập tin đính kèm . . $tên tệp . '";'];
// Xuất tất cả dữ liệu còn lại trên một con trỏ tệp
fpassthru[$f];
// Thoát khỏi tập tin
thoát[];
?>
tệp xuấtcsv. file php xử lý quá trình xuất dữ liệu bằng PHP và MySQL
- Lấy các bản ghi từ cơ sở dữ liệu
- Tạo và mở tệp ở chế độ chỉ ghi bằng hàm PHP fopen[]
- Đặt các cột tiêu đề, định dạng dưới dạng CSV và ghi nó vào tệp đã mở bằng hàm PHP fputcsv[]
- Xuất dữ liệu từ cơ sở dữ liệu, định dạng dưới dạng CSV và ghi vào tệp
- Buộc trình duyệt tải xuống dữ liệu ở định dạng CSV trong một tệp
Bạn có muốn nhận trợ giúp triển khai hay sửa đổi hoặc mở rộng chức năng của tập lệnh này không?
Pradeep Maurya
Pradeep Maurya là Nhà thiết kế & Phát triển Web Chuyên nghiệp và là Người sáng lập "Trang web hướng dẫn". Anh ấy sống ở Delhi và thích trở thành một người tự lập. Với tư cách là chủ sở hữu, anh ấy đang cố gắng hết sức để cải thiện nền tảng này từng ngày. Niềm đam mê, sự cống hiến và khả năng ra quyết định nhanh chóng của anh ấy nổi bật so với những người khác. Anh ấy là một blogger cuồng nhiệt và viết trên các ấn phẩm như Dzone, e27. đồng