Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengimport dan mengeksport data kehadiran pekerja melalui PHP?

Bagaimana untuk mengimport dan mengeksport data kehadiran pekerja melalui PHP?

PHPz
PHPzasal
2023-09-24 17:07:411162semak imbas

Bagaimana untuk mengimport dan mengeksport data kehadiran pekerja melalui PHP?

Bagaimana untuk mengimport dan mengeksport data kehadiran pekerja melalui PHP?

Dalam pengurusan harian perusahaan, mengimport dan mengeksport data kehadiran pekerja adalah tugas yang sangat penting. Fungsi import dan eksport data kehadiran pekerja boleh direalisasikan dengan mudah melalui bahasa pengaturcaraan PHP. Artikel ini akan memperkenalkan cara menggunakan PHP untuk mencapai fungsi ini dan menyediakan contoh kod khusus.

1. Import data kehadiran pekerja

  1. Penyediaan pangkalan data
    Pertama, kita perlu menyediakan pangkalan data untuk menyimpan data kehadiran pekerja. Anda boleh menggunakan MySQL atau sistem pengurusan pangkalan data hubungan lain untuk membuat jadual data kehadiran. Medan jadual data kehadiran termasuk ID pekerja, tarikh, masa kerja, waktu cuti kerja, dsb.
  2. Buat borang fail muat naik
    Dalam halaman HTML, buat borang muat naik fail untuk memilih fail data kehadiran yang perlu diimport. Kodnya adalah seperti berikut:
<form action="import.php" method="post" enctype="multipart/form-data">
    <input type="file" name="file" accept=".csv">
    <input type="submit" value="导入">
</form>
  1. Tulis skrip import
    Dalam skrip PHP untuk mengimport data, anda perlu menyambung ke pangkalan data terlebih dahulu dan memasukkan data fail CSV yang dibaca ke dalam jadual data kehadiran. Kod sampel adalah seperti berikut:
<?php
// 导入数据
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // 获取上传的文件
    $file = $_FILES['file']['tmp_name'];
    
    // 连接数据库
    $conn = new mysqli('localhost', 'username', 'password', 'database_name');
    
    // 读取CSV文件
    if (($handle = fopen($file, "r")) !== false) {
        while (($data = fgetcsv($handle, 1000, ",")) !== false) {
            // 将数据插入数据库
            $sql = "INSERT INTO attendance (employee_id, date, start_time, end_time) 
                    VALUES ('$data[0]', '$data[1]', '$data[2]', '$data[3]')";
            $conn->query($sql);
        }
        fclose($handle);
    }
    
    // 关闭数据库连接
    $conn->close();
    
    // 导入成功提示
    echo "导入成功";
}
?>

Dalam kod di atas, mula-mula dapatkan fail CSV yang dimuat naik, kemudian sambungkan ke pangkalan data dan masukkan data ke dalam jadual data kehadiran baris demi baris, dan akhirnya tutup sambungan pangkalan data dan keluarkan a menggesa bahawa import berjaya.

2. Eksport data kehadiran pekerja

  1. Buat butang eksport
    Dalam halaman HTML, buat butang untuk mengeksport data kehadiran pekerja. Kodnya adalah seperti berikut:
<a href="export.php">导出</a>
  1. Tulis skrip eksport
    Dalam skrip PHP untuk mengeksport data, anda perlu menyambung ke pangkalan data terlebih dahulu, menanyakan data kehadiran pekerja yang perlu dieksport dan menyimpan hasil pertanyaan ke fail CSV. Kod sampel adalah seperti berikut:
<?php
// 导出数据
// 连接数据库
$conn = new mysqli('localhost', 'username', 'password', 'database_name');

// 查询员工考勤数据
$sql = "SELECT * FROM attendance";
$result = $conn->query($sql);

// 创建CSV文件
$file = fopen("attendance.csv", "w");

// 写入表头
fputcsv($file, array("员工ID", "日期", "上班时间", "下班时间"));

// 写入数据
while ($data = $result->fetch_assoc()) {
    fputcsv($file, array($data['employee_id'], $data['date'], $data['start_time'], $data['end_time']));
}

// 关闭文件
fclose($file);

// 关闭数据库连接
$conn->close();

// 下载CSV文件
header("Content-type: text/csv");
header("Content-Disposition: attachment; filename=attendance.csv");
readfile("attendance.csv");
?>

Dalam kod di atas, mula-mula sambung ke pangkalan data dan tanya data kehadiran pekerja. Kemudian buat fail CSV dan tulis hasil pertanyaan ke dalam fail CSV baris demi baris. Akhir sekali, tetapkan pengepala respons HTTP untuk menyebabkan penyemak imbas memuat turun fail CSV yang terhasil.

Kini, melalui contoh kod di atas, kita boleh melaksanakan fungsi import dan eksport data kehadiran pekerja. Cuma tambah kod pada fail yang sepadan dan tambahkan borang atau butang yang sepadan pada halaman HTML. Saya harap artikel ini dapat membantu dalam merealisasikan fungsi ini!

Atas ialah kandungan terperinci Bagaimana untuk mengimport dan mengeksport data kehadiran pekerja melalui PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn