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

我想使用php创建一个简单的队列系统,当客户选择一个选项时,将在其中生成一张票据。主要要求是:

  • 生成格式为(例如C0001、E0001)的票号,字母表示客户选择的不同选项
  • 能够在第二天重置号码(工作人员单击重置按钮)
  • 每个记录都需要存储在mysql中
  • 下面是我得到的,我得到了两张表(票证id和票证)和一个触发器:

    票证id

    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
              ";
    
    触发器工作正常,因为它成功地生成了数字,但我不知道如何重置数字。无论如何,我知道触发器不是完成整个事情的唯一选择,如果有人有更好的解决方案,请帮助我