在REQUEST_URI中检查数据库记录中的目录

问题描述:

即时通讯寻找在REQUEST_URI中使用数据库中的条目验证directorys。我现在有一个网址结构如下所示在REQUEST_URI中检查数据库记录中的目录

https://domain.com/accounts/customers/details

我的数据库看起来像这样

IDNO - URL - 家长

1 - 帐户 - 0

2 - 客户 - 1

3 - details - 2

!!我不知道如何创建一个表,我的问题

什么可能的方法有查询的网址这些单个部件存在,但都是对方

的父母或子女,从而澄清我想检查数据库中是否存在“accounts”,如果存在,我们会看到数据库中是否存在“customers”,但其父项与上述表中的帐户ID相同

如果不存在,我将返回404

如果我是你,我可能会设置一个翻译表,它为每个其他标签存储外键LES。下面是一个例子,假设你有这三个表:

帐户:

​​

客户:

Customer ID |  Name | Birthday 
    1  |  Matt | Jan 1 
    2  | Nathan | Jan 2 

详情:

Details ID |  Name | Other Stuff 
    1  | Details 1 | DETAILS 
    2  | Details 2 | MORE 

这三张表容纳的数据你的三个模型。基本上你添加第四个表链接在一起:

转换表:

Account | Customer | Details 
    1  |  1  |  1 
    1  |  2  |  1 
    2  |  2  |  2 
    3  |  1  |  2 

您都指向此表中的其他表的UID。这可以让你在逻辑上将三个组合在一起。上面的表格基本上是说这个:

  • 账户1包含马特和他的细节详情
  • 账户1包含Nathan和他的细节详情
  • 帐户2包含Nathan和他的细节更为
  • 帐户3包含马特和他的详细信息是更多

这可以让你做的事情就像获取所有的查询对转换表,只是在需要时加入数据。如果你的PHP则只需检查你的论点agains数据库:

https://domain.com/1/2/2 

有了这条路线,你将有一个SQL查询是这样的:

SELECT * FROM translation_table 
    WHERE `Account` = 1 
    AND `Customer` = 2 
    AND `Details` = 2 

如果返回一行,那么你是金色的你可以加入你需要的数据并渲染页面。如果它不存在,则返回一个404头。

+0

有没有其他的做这个与一个表,因为我有一个现有的表,我们正在移动到SEO友好的网址有多个网址,例如www.domain.com/mobile-phones这是一个页面,然后另一个页面比如www.domain.com/iphones,我只是想整理一下url,所以它会看起来像www.domain.com/mobile-phone/iphones,如果用户从网址中删除iphone,它会回到www.domain。 com /手机页面 – Nathan