Dans la gestion des entreprises modernes, le système de fréquentation est un outil important pour assurer une gestion standardisée des ressources humaines basée sur les bureaux et les données. Surtout pour les grandes entreprises comme Baidu, Alibaba et Tencent, la stabilité et l'évolutivité du système d'enregistrement sont cruciales. Grâce à la conception raisonnable du système, non seulement les employés peuvent améliorer leur efficacité de travail, mais également fournir un support précis des données de fréquentation pour la gestion des RH.
Avant de développer un système d'enregistrement PHP, nous devons clarifier les modules fonctionnels de base que le système doit avoir:
Ce qui suit construire progressivement un système de punch-in simple et pratique basé sur le langage PHP.
Deux tables de données de base sont conçues pour stocker respectivement les informations de l'utilisateur et les enregistrements de punch-in:
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
password VARCHAR(255) NOT NULL
);
CREATE TABLE attendance (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
clock_in TIME NOT NULL,
clock_out TIME,
FOREIGN KEY (user_id) REFERENCES users(id)
);
La première étape du système d'enregistrement consiste à se connecter pour s'assurer que le fonctionnement de chaque utilisateur est traçable:
session_start();
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$username = $_POST['username'];
$password = $_POST['password'];
// Processus de vérification de la base de données
$query = "SELECT * FROM users WHERE username='$username'";
$result = mysqli_query($conn, $query);
$user = mysqli_fetch_assoc($result);
if (password_verify($password, $user['password'])) {
$_SESSION['user_id'] = $user['id'];
header("Location: clock_in.php");
} else {
echo "Nom d'utilisateur ou mot de passe incorrect";
}
}
Après avoir enregistré avec succès, l'utilisateur peut appuyer sur et depuis le travail, et le système enregistre l'heure actuelle:
$now = date("H:i:s");
$user_id = $_SESSION['user_id'];
// Insérer l'enregistrement du temps d'enregistrement
$query = "INSERT INTO attendance (user_id, clock_in) VALUES ('$user_id', '$now')";
mysqli_query($conn, $query);
echo "Vérifier avec succès,Le temps est:$now";
Un excellent système d'enregistrement doit non seulement être complet, mais également prendre en compte l'expérience utilisateur:
Cet article présente en détail comment créer un module de fonction de punch-in pratique via le langage PHP, y compris la conception de la base de données, l'authentification de l'identité de l'utilisateur, l'implémentation de la logique punch-in et d'autres liens. Que ce soit dans les petites et moyennes entreprises ou les grandes sociétés Internet telles que BAT, vous pouvez vous référer à cette idée de mise en œuvre pour créer un système de fréquentation exclusif.