人人有好天。 我试图为我的系统提供任务跟踪模块。 逻辑是,每当我向用户分配任务时,该系统将任务更新到“信号”的含义,即特定用户负责这项任务。 更新后,它创建了一个“用户_task”表,基本上把任务和用户表联系在一起。 每当我给某个人指派任务时,就会被罚款。 但是,当我再次这样做时,以前的任务记录是,Istaken的田地回到零。 我试图重新签字,但先前的记录再次重述。 它令人非常不安。 I m 采用XAMPP、MySQL和PHP。 我不喜欢我,不是唯一经历过这种情况的人。 任何帮助都会受到高度赞赏。
我的表格如下:
CREATE TABLE IF NOT EXISTS `task` (
`Task_No` int(11) NOT NULL AUTO_INCREMENT,
`Task_Name` varchar(100) NOT NULL,
`Task_Desc` varchar(450) DEFAULT NULL,
`Task_DateCreated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Task_IsTaken` tinyint(1) NOT NULL,
PRIMARY KEY (`Task_No`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
CREATE TABLE IF NOT EXISTS `user_task` (
`UT_No` int(11) NOT NULL AUTO_INCREMENT,
`User_Email` varchar(100) NOT NULL,
`Task_No` int(11) NOT NULL,
`Task_Duration` varchar(20) NOT NULL,
`Task_DateTaken` date DEFAULT NULL,
`Task_DateFinished` timestamp NULL DEFAULT NULL,
`Task_IsIssue` tinyint(1) NOT NULL,
PRIMARY KEY (`UT_No`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
我的文字(从形式上):
//Process - Insert Task
if(isset($_POST[ btnCreateTask ]))
{
if($_POST[ taskName ]!=NULL)
{
$taskName = mysql_real_escape_string ($_POST[ taskName ]);
$taskDesc = mysql_real_escape_string ($_POST[ taskDesc ]);
$insertTask = "INSERT INTO task(Task_Name, Task_Desc, Task_IsTaken) VALUES( $taskName , $taskDesc , 0)";
$sqlResult1 = mysql_query($insertTask);}
else
{
echo "No task name given";
$errorCode = 1;
}
}
if(isset($_POST[ btnAssignTask ]))
{
if($_POST[ assignTaskName ]!=NULL)
{
$assigntaskName = mysql_real_escape_string($_POST[ assignTaskName ]);
$assigntaskNo = mysql_real_escape_string($_POST[ assignTaskNo ]);
$assigntaskOwner = mysql_real_escape_string($_POST[ assignTaskOwner ]);
$assigntaskDuration = mysql_real_escape_string($_POST[ assignTaskDuration ]);
$updateUpcomingTask = "UPDATE task SET Task_IsTaken = 1 AND Task_No = $assigntaskNo ";
$createUserTask = "INSERT INTO user_task (User_Email, Task_No, Task_Duration, Task_DateTaken, Task_DateFinished)
VALUES ( $assigntaskOwner , $assigntaskNo , $assigntaskDuration , $now , NULL)";
$sqlResult2 = mysql_query($updateUpcomingTask);
$sqlResult3 = mysql_query($createUserTask);
}
else
{
echo "No task selected";
$errorCode = 2;
}
}