Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中记录timein和timeout_Php_Mysql - Fatal编程技术网

在php中记录timein和timeout

在php中记录timein和timeout,php,mysql,Php,Mysql,我正在尝试制作一个出勤监控系统,在这个系统中,只要记录到数据库中,一个人就可以随意超时 有人能给我一个php的插入/更新代码吗 我有这个代码,可以插入idnumber,如果不存在和更新,如果存在 我想要的是我可以插入相同的idnumber而不更新旧记录。可能吗 创建一个复合ID密钥。这是两列上的唯一约束-idnumber+类型,其中类型为0=in,1=out CREATE TABLE foo ( id INT PRIMARY KEY, idnumber INT, type TI

我正在尝试制作一个出勤监控系统,在这个系统中,只要记录到数据库中,一个人就可以随意超时

有人能给我一个php的插入/更新代码吗

我有这个代码,可以插入idnumber,如果不存在和更新,如果存在

我想要的是我可以插入相同的idnumber而不更新旧记录。可能吗


创建一个复合ID密钥。这是两列上的唯一约束-
idnumber
+类型,其中类型为0=in,1=out

CREATE TABLE foo (
   id INT PRIMARY KEY,
   idnumber INT,
   type TINYINT(1),
   UNIQUE KEY idtype (id, type)
);

实际上,idnumber是TBlattendance中的一个外键如果它是一个外键,并且一个idnumber需要有2条记录,那么您必须在这些记录之间添加另一个表(idnumber作为PK),而
idnumber
将是从
foo
到这个新表PK的FK。至少如果你想保持规范化的模式和FKs。谢谢分享你的想法。我终于明白了:)在堆栈溢出上,单击绿色的“接受”复选框表示感谢;-)
$query = "SELECT * FROM tblattendance WHERE idnumber='".$_POST[idnumber']."'";
$res = mysql_query($query);
list($exist) = mysql_fetch_array($res);

    if (!$exist){
          $query = "INSERT INTO tblattendance SET idnumber='".$_POST['idnumber']."', datein=CURDATE(), timein = CURTIME()";
          $insert_result = mysql_query($query);
    }else{
         $query1 = "UPDATE tblattendance SET dateout=CURDATE(), timeout = CURTIME() WHERE idnumber='".$_POST['idnumber']."' ORDER BY id DESC LIMIT 1 ";
         $insert_result1 = mysql_query($query1);    
    }
CREATE TABLE foo (
   id INT PRIMARY KEY,
   idnumber INT,
   type TINYINT(1),
   UNIQUE KEY idtype (id, type)
);