我目前是 PHP 和 MySQL 的新手,我正在尝试创建一个时间日志系统(用于记录进出时间)。
我为用户创建了一个表,用于存储员工的帐户,并创建了以不同用户命名的不同表。我想要做的是将输入和输出的时间存储到以登录用户命名的表中。 (用户(当前登录)= Employee1。此时进出时间数据应存储在名为“Employee1”的表中。
如何使用 PHP 根据用户的用户名搜索正确的表?
最佳答案
您不想为每个用户使用不同的表。有一个名为 employees
的表,如下所示:
ID | First_name | Last_name | Favorite_ice_cream
-------------------------------------------------------------------------
1 Bill Joneston Chocolate
2 Harry Smitters Sherbert
该表存储员工的基本信息。请注意,每个员工的 ID 都是唯一的。
然后有另一个名为 time_logs
的表,看起来像:
Employee_ID | Time_In | Time_Out | Date
---------------------------------------------------------------
1 8:00 5:00 2014-05-05
2 8:30 5:30 2014-05-05
现在您可以使用这两个表来跟踪员工时间日志。
要根据 Harry Smitter 的名字获取 5 月 5 日 Harry Smitter
的时间统计信息,请运行如下查询:
SELECT
log.time_in,
log.time_out
FROM time_logs log
JOIN employees e ON e.id = log.employee_id
WHERE e.first_name = 'Harry'
AND e.last_name = 'Smitters'
AND log.date = '2014-05-05'
请注意,如果恰好有两个“Harry Smitters”拥有 5 月 5 日的统计数据,您将获得他们的两个统计数据。
关于php - 使用php在mysql中查找合适的表来存储数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23601588/