Jadual Kandungan
员工列表
Rumah pembangunan bahagian belakang tutorial php Bagaimana untuk membangunkan aplikasi kehadiran pekerja dalam talian dengan PHP dan Vue

Bagaimana untuk membangunkan aplikasi kehadiran pekerja dalam talian dengan PHP dan Vue

Sep 24, 2023 pm 05:13 PM
php vue Kehadiran pekerja dalam talian

Bagaimana untuk membangunkan aplikasi kehadiran pekerja dalam talian dengan PHP dan Vue

Cara membangunkan aplikasi kehadiran pekerja dalam talian dengan PHP dan Vue

Abstrak: Dengan perkembangan pesat teknologi, semakin banyak syarikat Memilih untuk alihkan sistem kehadiran pekerja anda ke platform dalam talian. Artikel ini akan memperkenalkan cara menggunakan PHP dan Vue, dua teknologi pembangunan popular, untuk membangunkan aplikasi kehadiran pekerja dalam talian. Kami akan memberikan contoh kod khusus untuk membantu pembaca memahami dan menggunakan dengan lebih baik.

  1. Tetapan Persekitaran

Sebelum anda bermula, sila pastikan persekitaran pembangunan anda telah disediakan dengan betul. Anda perlu memasang persekitaran pembangunan untuk PHP dan Vue, seperti XAMPP (untuk pengguna Windows) atau MAMP (untuk pengguna Mac). Pada masa yang sama, anda juga memerlukan pelayan pangkalan data untuk menyimpan data kehadiran pekerja, seperti MySQL.

  1. Buat pangkalan data

Gunakan alat pentadbir MySQL (seperti phpMyAdmin) untuk mencipta pangkalan data baharu untuk menyimpan data kehadiran pekerja. Cipta pangkalan data bernama "kehadiran", kemudian buat jadual bernama "pekerja" untuk menyimpan maklumat pekerja, dan jadual bernama "kehadiran" untuk menyimpan rekod kehadiran pekerja. Berikut ialah contoh kod SQL untuk mencipta dua jadual ini:

Buat jadual pekerja:

CREATE TABLE employees (
    id INT(11) AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    email VARCHAR(100) NOT NULL,
    department VARCHAR(100) NOT NULL
);
Salin selepas log masuk

Buat jadual kehadiran:

CREATE TABLE attendances (
    id INT(11) AUTO_INCREMENT PRIMARY KEY,
    employee_id INT(11) NOT NULL,
    check_in DATETIME NOT NULL,
    check_out DATETIME,
    FOREIGN KEY (employee_id) REFERENCES employees(id)
);
Salin selepas log masuk
    #🎜 🎜# Pembangunan Bahagian Belakang - PHP
Pertama, kita perlu mencipta fail PHP untuk mengendalikan logik bahagian belakang. Kita boleh menamakan fail ini "api.php". Dalam fail ini, kami akan menulis kod untuk interaksi data dengan aplikasi Vue bahagian hadapan melalui API. Berikut ialah contoh mudah:

<?php

header('Content-Type: application/json');

// 连接到数据库
$dsn = 'mysql:host=localhost;dbname=attendance';
$username = 'root';
$password = '';

try {
    $db = new PDO($dsn, $username, $password);
} catch (PDOException $e) {
    echo '数据库连接失败: ' . $e->getMessage();
    exit();
}

// 获取所有员工信息
function getEmployees() {
    global $db;
    
    $stmt = $db->prepare('SELECT * FROM employees');
    $stmt->execute();
    
    return $stmt->fetchAll(PDO::FETCH_ASSOC);
}

// 添加新的考勤记录
function addAttendance($employeeId, $checkIn) {
    global $db;
    
    $stmt = $db->prepare('INSERT INTO attendances(employee_id, check_in) VALUES(?, ?)');
    $stmt->execute([$employeeId, $checkIn]);
    
    return $db->lastInsertId();
}

// 更新考勤记录
function updateAttendance($attendanceId, $checkOut) {
    global $db;
    
    $stmt = $db->prepare('UPDATE attendances SET check_out = ? WHERE id = ?');
    $stmt->execute([$checkOut, $attendanceId]);
    
    return $stmt->rowCount();
}

// 获取指定员工的考勤记录
function getAttendances($employeeId) {
    global $db;
    
    $stmt = $db->prepare('SELECT * FROM attendances WHERE employee_id = ?');
    $stmt->execute([$employeeId]);
    
    return $stmt->fetchAll(PDO::FETCH_ASSOC);
}

// 根据传入的API请求参数调用相应的函数
if (isset($_GET['action'])) {
    $action = $_GET['action'];
    if ($action === 'getEmployees') {
        echo json_encode(getEmployees());
    } else if ($action === 'addAttendance') {
        $employeeId = $_POST['employeeId'];
        $checkIn = $_POST['checkIn'];
        
        echo json_encode(['id' => addAttendance($employeeId, $checkIn)]);
    } else if ($action === 'updateAttendance') {
        $attendanceId = $_POST['attendanceId'];
        $checkOut = $_POST['checkOut'];
        
        echo json_encode(['rowsAffected' => updateAttendance($attendanceId, $checkOut)]);
    } else if ($action === 'getAttendances') {
        $employeeId = $_GET['employeeId'];
        
        echo json_encode(getAttendances($employeeId));
    }
}
Salin selepas log masuk

Dalam fail PHP ini, kami mula-mula menyambung ke pangkalan data dan mentakrifkan beberapa fungsi untuk mengendalikan pelbagai permintaan API. Logik khusus termasuk mendapatkan maklumat pekerja, menambah/mengemas kini rekod kehadiran, dan mendapatkan rekod kehadiran pekerja tertentu.

Di sini, kami hanya menyediakan beberapa contoh fungsi asas, yang boleh anda panjangkan dan ubah suai mengikut keperluan sebenar anda.

    Pembangunan bahagian hadapan - Vue
Seterusnya, kami akan menggunakan Vue untuk membangunkan aplikasi bahagian hadapan. Kita perlu mencipta contoh Vue untuk membuat dan mengurus antara muka dan logik aplikasi. Berikut ialah contoh mudah:

<!DOCTYPE html>
<html>
<head>
  <title>员工考勤应用程序</title>
  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
  <div id="app">
    <h1 id="员工列表">员工列表</h1>
    <ul>
      <li v-for="employee in employees" :key="employee.id">
        {{ employee.name }} - {{ employee.department }}
        <button @click="addAttendance(employee.id)">签到</button>
      </li>
    </ul>
  </div>

  <script>
    new Vue({
        el: "#app",
        data: {
            employees: []
        },
        mounted() {
            this.getEmployees();
        },
        methods: {
            getEmployees() {
                fetch('api.php?action=getEmployees')
                    .then(response => response.json())
                    .then(data => {
                        this.employees = data;
                    });
            },
            addAttendance(employeeId) {
                fetch('api.php?action=addAttendance', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json',
                    },
                    body: JSON.stringify({
                        employeeId: employeeId,
                        checkIn: new Date().toISOString()
                    })
                })
                .then(response => response.json())
                .then(data => {
                    alert(`签到成功,考勤ID: ${data.id}`);
                });
            }
        }
    });
  </script>
</body>
</html>
Salin selepas log masuk
Dalam contoh ini, kami mula-mula memperkenalkan fail JavaScript Vue. Kemudian, kami mencipta contoh Vue, menentukan senarai pekerja dan dua kaedah untuk mendapatkan maklumat pekerja dan menambah rekod kehadiran. Apabila halaman dimuatkan, tika Vue akan secara automatik memanggil kaedah yang dipasang untuk mendapatkan maklumat pekerja dan mengikatnya pada harta pekerja. Dalam senarai, kami menggunakan arahan v-for untuk melingkari setiap pekerja dan menambah butang daftar masuk untuk setiap pekerja. Apabila pengguna mengklik butang log masuk, kaedah addAttendance akan dicetuskan untuk memulakan permintaan untuk menambah rekod kehadiran pada bahagian belakang dan gesaan log masuk yang berjaya akan dipaparkan selepas kejayaan.

Perlu diambil perhatian bahawa permintaan API dalam contoh ini menggunakan fungsi ambil untuk memulakan permintaan tak segerak Anda juga boleh menggunakan perpustakaan lain yang serupa, seperti axios.

    Kesimpulan
Dengan menggunakan PHP dan Vue untuk membangunkan aplikasi kehadiran pekerja dalam talian, kami boleh melaksanakan sistem kehadiran pekerja yang mudah dan praktikal. Dalam artikel ini, kami menyediakan contoh kod khusus untuk membantu pembaca memahami proses penyimpanan dan interaksi data. Sudah tentu, ini hanyalah rangka kerja asas, dan anda boleh melanjutkan dan mengubah suainya mengikut keperluan dan keadaan sebenar anda. Saya harap artikel ini akan membantu anda memahami cara menggunakan PHP dan Vue untuk membangunkan aplikasi kehadiran pekerja dalam talian.

Atas ialah kandungan terperinci Bagaimana untuk membangunkan aplikasi kehadiran pekerja dalam talian dengan PHP dan Vue. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menambah fungsi ke butang untuk vue Cara menambah fungsi ke butang untuk vue Apr 08, 2025 am 08:51 AM

Anda boleh menambah fungsi ke butang VUE dengan mengikat butang dalam templat HTML ke kaedah. Tentukan kaedah dan tulis logik fungsi dalam contoh Vue.

Masa Depan PHP: Adaptasi dan Inovasi Masa Depan PHP: Adaptasi dan Inovasi Apr 11, 2025 am 12:01 AM

Masa depan PHP akan dicapai dengan menyesuaikan diri dengan trend teknologi baru dan memperkenalkan ciri -ciri inovatif: 1) menyesuaikan diri dengan pengkomputeran awan, kontena dan seni bina microservice, menyokong Docker dan Kubernetes; 2) memperkenalkan pengkompil JIT dan jenis penghitungan untuk meningkatkan prestasi dan kecekapan pemprosesan data; 3) Berterusan mengoptimumkan prestasi dan mempromosikan amalan terbaik.

PHP vs Python: Memahami Perbezaan PHP vs Python: Memahami Perbezaan Apr 11, 2025 am 12:15 AM

PHP dan Python masing -masing mempunyai kelebihan sendiri, dan pilihannya harus berdasarkan keperluan projek. 1.Php sesuai untuk pembangunan web, dengan sintaks mudah dan kecekapan pelaksanaan yang tinggi. 2. Python sesuai untuk sains data dan pembelajaran mesin, dengan sintaks ringkas dan perpustakaan yang kaya.

Cara Lulus Parameter untuk Fungsi Vue Cara Lulus Parameter untuk Fungsi Vue Apr 08, 2025 am 07:36 AM

Terdapat dua cara utama untuk lulus parameter ke fungsi Vue.js: Lulus data menggunakan slot atau mengikat fungsi dengan mengikat, dan menyediakan parameter: lulus parameter menggunakan slot: lulus data dalam templat komponen, diakses dalam komponen dan digunakan sebagai parameter fungsi. Lulus parameter menggunakan mengikat mengikat: Fungsi mengikat dalam contoh Vue.js dan menyediakan parameter fungsi.

PHP dan Python: Membandingkan dua bahasa pengaturcaraan yang popular PHP dan Python: Membandingkan dua bahasa pengaturcaraan yang popular Apr 14, 2025 am 12:13 AM

PHP dan Python masing -masing mempunyai kelebihan mereka sendiri, dan memilih mengikut keperluan projek. 1.PHP sesuai untuk pembangunan web, terutamanya untuk pembangunan pesat dan penyelenggaraan laman web. 2. Python sesuai untuk sains data, pembelajaran mesin dan kecerdasan buatan, dengan sintaks ringkas dan sesuai untuk pemula.

Cara melompat ke Div Vue Cara melompat ke Div Vue Apr 08, 2025 am 09:18 AM

Terdapat dua cara untuk melompat elemen div di Vue: Gunakan Vue Router dan tambahkan komponen router-link. Tambah pendengar acara @Click dan panggil ini. $ Router.push () kaedah untuk melompat.

Status Semasa PHP: Lihat trend pembangunan web Status Semasa PHP: Lihat trend pembangunan web Apr 13, 2025 am 12:20 AM

PHP tetap penting dalam pembangunan web moden, terutamanya dalam pengurusan kandungan dan platform e-dagang. 1) PHP mempunyai ekosistem yang kaya dan sokongan rangka kerja yang kuat, seperti Laravel dan Symfony. 2) Pengoptimuman prestasi boleh dicapai melalui OPCACHE dan NGINX. 3) Php8.0 memperkenalkan pengkompil JIT untuk meningkatkan prestasi. 4) Aplikasi awan asli dikerahkan melalui Docker dan Kubernet untuk meningkatkan fleksibiliti dan skalabiliti.

Cara melompat tag ke vue Cara melompat tag ke vue Apr 08, 2025 am 09:24 AM

Kaedah untuk melaksanakan lompatan tag dalam Vue termasuk: menggunakan tag dalam templat HTML untuk menentukan atribut HREF. Gunakan komponen router-link routing VUE. Gunakan ini. $ Router.push () kaedah dalam JavaScript. Parameter boleh dilalui melalui parameter pertanyaan dan laluan dikonfigurasikan dalam pilihan penghala untuk lompatan dinamik.

See all articles