0

我正在做一个项目,该项目具有用户批准或撤销申请的能力(如奖学金)。但我似乎无法找出为什么它没有做我想做的事情。请在下面检查我的代码:

$try = mysql_query("UPDATE new_applicants SET ApplicantStatusId='$status', DateManaged = NOW() WHERE ApplicantId='$id'") or die(mysql_error()); 

$try1 = mysql_fetch_assoc($try);

$status1 = $try1["ApplicantStatusId"];

if( $status1 == 2 ){
header('location: ../employeepage.php');
exit();
}

else{

$sql1 = "INSERT INTO scholar_profile (Firstname, Middlename, Lastname, Address, EmailAddress,  BirthDate, BirthPlace, Religion, Age, Gender, ContactNo, Skill, Talent, LevelId, GWA, CategoryId, StatusId, SchoolId, BarangayId) SELECT Firstname, Middlename, Lastname, Address, EmailAddress, BirthDate, BirthPlace, Religion, Age, Gender, ContactNo, Skill, Talent, LevelId, GWA, CategoryId, StatusId, SchoolId, BarangayId
FROM new_applicants
WHERE new_applicants.ApplicantId = '$id'" or die(mysql_error()); 

}

当申请者状态变为 2 = 已撤销时,不应将数据复制到 Academic_profile。但是当我尝试这个时,它仍然会复制。这有什么问题?谢谢。

4

3 回答 3

1

您正在更新表格,因此mysql_fetch_assoc不会返回任何内容。即$status1null。如果要选择该数据(ApplicantStatusID,...),则必须改用SELECT语句。

于 2013-01-04T22:02:59.107 回答
0

您可以只更改whereSQL 语句的子句:

WHERE new_applicants.ApplicantId = '$id' and new_Applicants.ApplicantStatusId <> 2"

那么你就不用担心php中的逻辑了。

于 2013-01-04T22:04:34.777 回答
0

您正在获取不正确$try1 = mysql_fetch_assoc($try);的陈述。UPDATE

fetch 仅带有SELECT语句

于 2013-01-04T22:14:52.903 回答