真的坚持这个......基本上我的系统有4个表;用户、项目、用户项目和活动。用户表有一个用户类型字段,它定义了他们是管理员还是用户(通过整数)...
管理员可以创建项目、为项目创建活动并为用户(受限访问用户)分配活动。因此,此设置意味着管理员永远不会与活动(而是项目)直接关联。
当我的首席管理员用户删除管理员时,我还需要删除所有项目和活动(对于他们的项目)。到目前为止,我的用户删除脚本很简单并且可以工作,但是我在如何获取 projectID 以便知道要删除哪些活动(与即将删除的项目相关联)方面遇到了麻烦:
$userid = $_GET['userid'];
$query = "DELETE FROM users WHERE userid=".$userid;
$result = mysql_query($sql, $connection)
or die("Error: ".mysql_error());
$query = "DELETE FROM projects WHERE userid=".$userid;
$result = mysql_query($sql, $connection)
or die("Error: ".mysql_error());
$query = "DELETE FROM userprojects WHERE userid=".$userid;
$result = mysql_query($sql, $connection)
or die("Error: ".mysql_error());
$query = "DELETE FROM activities WHERE projectid=".$projectid;
$result = mysql_query($sql, $connection)
or die("Error: ".mysql_error());
现在前三个查询执行良好,显然是因为成功检索了用户 ID。然而,我知道的第四个也是最后一个查询是错误的,因为没有可以从任何地方获得的投影,但是我把它放在那里以帮助理解我想要得到的东西!
我猜我需要像'WHERE projectid ='这样的东西,然后从用户ID中收集已删除的项目,这些项目可能与该项目的活动相关!这是一个简单的概念,但我遇到了麻烦......