Php 如何使会话允许不同的项目?

Php 如何使会话允许不同的项目?,php,mysql,database-design,session,codeigniter,Php,Mysql,Database Design,Session,Codeigniter,我计划使用PHP/MySQL/Codeigniter进行项目管理 它将有10-20个用户和20-30个项目同时进行 假设John是项目a、B和C的成员。Cindy是项目a、D、F等的成员 我想让它只有成员的项目可以访问该项目 现在我不知道如何处理这个问题 您对数据库设计和会话有何建议 任何资源都将不胜感激。如果您不想使用框架解决方案,您可以使用或尝试: 具有用户、项目和用户项目表 对于用户所在的每个项目,UserProject表将在一行中包含UserID和项目ID 创建会话时,可以从UserPr

我计划使用PHP/MySQL/Codeigniter进行项目管理

它将有10-20个用户和20-30个项目同时进行

假设John是项目a、B和C的成员。Cindy是项目a、D、F等的成员

我想让它只有成员的项目可以访问该项目

现在我不知道如何处理这个问题

您对数据库设计和会话有何建议


任何资源都将不胜感激。

如果您不想使用框架解决方案,您可以使用或尝试:

  • 具有用户、项目和用户项目表

  • 对于用户所在的每个项目,UserProject表将在一行中包含UserID和项目ID

  • 创建会话时,可以从UserProject表中提取哪些项目是允许的(例如,将它们放在一个数组中,当显示导航时可以对其进行搜索)

  • 此外,每个项目都可以将一个用户设置为admin,以添加其他用户


  • 至于会话存储,我可以推荐memcached。有一个PHP函数可以让您设置自己的会话处理程序。不要将会话保存到真实的数据库中。这将增加不必要的开销

    我不能告诉你太多关于数据库设计的信息,因为你的帖子缺少大量的信息。因此,我只想说,创建两个表,“User”和“Project”。“用户”由ID、名称和电子邮件列组成。项目由列ID、用户ID(若DBMS支持外键)、名称等组成