パンチインタイムとパンチアウトタイムをタイムスタンプとしてデータベースに保存したい出席管理システムを開発しています。テーブルのクエリは次のとおりです。
CREATE TABLE IF NOT EXISTS `punchdetails` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`employeeid` int(11) NOT NULL,
`punchin` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`punchout` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`SERVER_ADDRIN` varchar(40) NOT NULL,
`REMOTE_ADDRIN` varchar(40) NOT NULL,
`REQUEST_TIMEIN` int(30) NOT NULL,
`SERVER_ADDROUT` varchar(40) NOT NULL,
`REMOTE_ADDROUT` varchar(40) NOT NULL,
`REQUEST_TIMEOUT` int(30) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
従業員がその日の最初にシステムにログインすると、その日のパンチインのオプションが表示されます。次に、punchinフィールドに現在のタイムスタンプを入力し、punchoutフィールドを null のみにする必要があります。パンチ アウトの値は、[パンチ アウト]リンクをクリックしたときにのみ挿入する必要があります。
しかし今、punchin のみに値を挿入しようとすると、punchin とpunchoutの両方が挿入されます。
誰でもこの問題を解決するのを手伝ってもらえますか?