如何使用MySQL和PHP从与父类别关联的页面创建指向子类别的链接

我如何能够从我的
MySQL数据库中列出的子类别中显示一个url值,其类似于下面的示例?

index.php?cat=category&sub=sub-cat-1&sub2=sub-cat-2&sub3=sub-cat-3

这是MySQL表.

CREATE TABLE categories ( 
id INT UNSIGNED NOT NULL AUTO_INCREMENT, 
parentID INT UNSIGNED NOT NULL DEFAULT 0, 
categoryNAME TEXT NOT NULL, 
PRIMARY KEY (id), 
INDEX parent (parentID)
);

更新:
我的最终目标是从与父类别关联的页面创建指向子类别的链接.

例:
我在“汽车零件”页面上,我想显示“发动机零件”,“悬架零件”和“传动零件”页面的链接.

最佳答案 您需要确保名称是唯一的,至少在其父级中是唯一的.我的建议是一个额外的字段:urlName VARCHAR(100)NOT NULL,以及一个新索引:UNIQUE KEY(parentID,urlName).你必须确保urlName可以安全地放入网址,否则你会得到一些丑陋的网址.

那就是说,你的网址需要一些工作.我猜这样的事情会起作用:

http://example.com/index.php?cat[]=cat&cat[]=subcat1&cat[]=subcat2

那会起作用,但它仍然有点讨厌,我永远不会使用那样的东西.你应该考虑URL重写,所以你的网址将是这样的:

http://example.com/cat/subcat/subcat2/

那好多了,不是吗?它也很容易!只需使用以下.htaccess:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php

然后只是爆炸你的$_SERVER [‘REQUEST_URI’],你很高兴!

点赞