PHP为队列系统生成票证,并能够在第二天重置票证号
我想使用php创建一个简单的队列系统,当客户选择一个选项时,将在其中生成一张票据。主要要求是:PHP为队列系统生成票证,并能够在第二天重置票证号,php,mysql,Php,Mysql,我想使用php创建一个简单的队列系统,当客户选择一个选项时,将在其中生成一张票据。主要要求是: 生成格式为(例如C0001、E0001)的票号,字母表示客户选择的不同选项 能够在第二天重置号码(工作人员单击重置按钮) 每个记录都需要存储在mysql中 下面是我得到的,我得到了两张表(票证id和票证)和一个触发器: 票证id CREATE TABLE `ticket_id` (`ticket_id` int(5) NOT NULL) ENGINE=InnoDB DEFAULT CHARSET=la
CREATE TABLE `ticket_id` (`ticket_id` int(5) NOT NULL)
ENGINE=InnoDB DEFAULT CHARSET=latin1;
门票
CREATE TABLE `ticket` (`ticket_id` int(5) NOT NULL,
`ticket_name` varchar(5) NOT NULL DEFAULT '''0''',
`ticket_type` varchar(25) NOT NULL,
`ticket_time` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
$query = "INSERT INTO ticket (ticket_type, ticket_time)
VALUES ('$in_tickettype', NOW())
";
$query = "UPDATE ticket SET
ticket_name = DEFAULT
WHERE ticket_time = NOW() + INTERVAL 1 DAY
";
触发器
CREATE TRIGGER `tg_ticket_insert` BEFORE INSERT ON `ticket`
FOR EACH ROW BEGIN
INSERT INTO ticket_id VALUES (NULL);
SET NEW.ticket_name = CONCAT('A', LPAD(LAST_INSERT_ID(), 4, '0'));
END
newTicket
CREATE TABLE `ticket` (`ticket_id` int(5) NOT NULL,
`ticket_name` varchar(5) NOT NULL DEFAULT '''0''',
`ticket_type` varchar(25) NOT NULL,
`ticket_time` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
$query = "INSERT INTO ticket (ticket_type, ticket_time)
VALUES ('$in_tickettype', NOW())
";
$query = "UPDATE ticket SET
ticket_name = DEFAULT
WHERE ticket_time = NOW() + INTERVAL 1 DAY
";
重置
CREATE TABLE `ticket` (`ticket_id` int(5) NOT NULL,
`ticket_name` varchar(5) NOT NULL DEFAULT '''0''',
`ticket_type` varchar(25) NOT NULL,
`ticket_time` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
$query = "INSERT INTO ticket (ticket_type, ticket_time)
VALUES ('$in_tickettype', NOW())
";
$query = "UPDATE ticket SET
ticket_name = DEFAULT
WHERE ticket_time = NOW() + INTERVAL 1 DAY
";
触发器工作正常,因为它成功地生成了数字,但我不知道如何重置数字。无论如何,我知道触发器不是完成整个事情的唯一选择,如果有人有更好的解决方案,请帮助我