0

我正在用 PHP 建立一个网站来分享我的漫画。我想实现分类以允许人们过滤他们想看的漫画。

我以前问过这个问题,但当时我的网站架构没有使用数据库。我已经实现了一个数据库(这太棒了,顺便说一句),所以我需要改变一下。

我在想这样做的方法是:

1)制作2个表格:1个类别,1个图像

2)根据图像所在的文件系统文件夹将图像插入各自的表中并分配该表ID

3) 使用新分配的类别 ID 将所有图像插入 All_Images 表

4) 接受用户输入来决定显示哪些图像。因此,如果用户输入 = cat 1,则显示具有类别 1 id 的图像。

所以,基本上我需要一种方法来在图像从文件系统进入时为它们分配类别。有没有更简单的方法来做到这一点?我必须创建多个表吗?

对此有什么想法吗?

谢谢!!

4

3 回答 3

4

正常的方法是有一个图像表(可能是文件名而不是实际图像?),然后与类别建立一对多的关系,以便每个漫画可以有多个:

Table:Image
-----------
rowid: integer identity
displayname: varchar
filename: varchar

Table:Category
--------------
rowid: integer identity
displayname: varchar

Table:ImageCategoryLink
-----------------------
imageid: integer foreign key references Image:rowid
categoryid: integer foreign key references Category:rowid

清除?

于 2012-09-21T13:58:57.350 回答
1

一个带有 id 和名称等的表类别,一个带有 id src 名称等的图像表。

之后的两个选择:

  • 如果图像只有一个类别,则在表 image 中放置一个字段 id_category
  • 如果一个图像可以有多个类别,则使用 id_image 和 id_category 创建另一个表 image_category
于 2012-09-21T13:58:03.487 回答
0

由于您是初学者(没有冒犯),我认为桌子上不会有数百万或卡通片。为您的类别使用 SET 字段(或 ENUM,如果您的卡通只能有一个类别)。

有些人会投票反对,因为使用它会产生一些负面影响(主要是当您想要更改类别时)。但是对于相对较小的表,这不会产生任何影响。

这将是最简单的解决方案。如果您希望网站变得更大,请为您的类别使用第二个表格并加入这些表格。

于 2012-09-21T14:02:17.540 回答