所以我有一个关于在 phpmyadmin 的 mysql 表中添加行的时间的问题。这些是有问题的表:
/*==============================================================*/
/* Table: Contribution */
/*==============================================================*/
create table Contribution
(
ContributionID int not null auto_increment,
CreatedByUserId int not null,
StoryID int not null,
PreviousCID int,
NextCID int,
OriginalCID int,
Content longblob not null,
CreatedDate datetime not null DEFAULT CURRENT_TIMESTAMP,
primary key (ContributionID)
);
/*==============================================================*/
/* Table: ContributionState */
/*==============================================================*/
create table ContributionState
(
ContributionStateID int not null auto_increment,
Title national varchar(100) not null,
DisplayOrder int not null,
primary key (ContributionStateID)
);
INSERT INTO ContributionState(ContributionStateID,Title,DisplayOrder)
VALUES (1,N'Vote up',1),
(2,N'Vote Down',2),
(3,N'Vulgar',3),
(4,N'Spam',4),
(5,N'Accepted',5),
(6,N'Rejected',6),
(7,N'Live',7),
(8,N'Deleted',8);
/*==============================================================*/
/* Table: Contribution_States */
/*==============================================================*/
create table Contribution_States
(
Contribution_StatesID int not null auto_increment,
ContributionStateID int not null,
ContributionID int not null,//derived from contribution table
UserID int not null,
CreatedDate datetime not null DEFAULT CURRENT_TIMESTAMP,
primary key (Contribution_StatesID)
);
因此,我有一个 php 文件来添加新的贡献,该文件向贡献表添加一个新行,并相应地向 Contribution_States 表添加一个新行。添加后,它们的默认 ContributionStateID 为 5,这意味着它们被接受,用户可以开始投票支持/反对它们,但为了生存 (7) 或被拒绝 (6),用户将在特定的分配时间内投票,之后他们不能投票。我想给用户投票的特定时间(为了现在进行测试,本例为 5 分钟),但我不知道在哪里添加它。
提前致谢。
最佳答案
您可以添加一个时间戳列“voteExpires”,设置为当前时间戳加上 5 分钟。这可以使用插入触发器来完成。
关于php - 在 mysql/phpmyadmin 中设置计时器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43057214/