


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.
- 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.
- 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 );
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) );
- #🎜 🎜# Pembangunan Bahagian Belakang - PHP
<?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)); } }
- Pembangunan bahagian hadapan - Vue
<!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>
- Kesimpulan
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!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



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 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 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.

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 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.

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.

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.

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.
