2011-04-07 21 views
0

我希望你能帮上忙。我是一名PHP/mySQL新手,并试图建立一个显示照片的个人网站。每张照片都有一个类型(如自然或城市),导航将是类型列表。但是,每张照片可以有多个类型。例如,如果照片是城市中的动物照片,则照片可以在自然和城市两个部分中)。PHP MYSQL建立数据库项目的建议

我已经与这个项目有一定距离,但我不确定我是否明智地设置它。我将每种类型设置为数据库表字段。例如,我有一个自然景观和一个城市景观,如果照片满足标准,我会将行值设置为true。

另一个问题是我需要添加新的字段时,遇到新的类别。我已经建立了一个管理页面来添加更多的列,但这意味着所有的INSERT命令等都必须是动态的,这让我很头疼。

出于兴趣你会如何更经验丰富的开发人员接近这一点?

预先感谢任何帮助。

回答

1

您可以为照片设置表格,为类型设置表格,然后在第三个表格中定义前两个表格之间的多对多关系。

这将使动态添加新类型变得更容易。

+0

感谢您花时间回复。我现在要研究这个。 – 2011-04-07 22:41:42

1

您可以看到您的解决方案将无法扩展 - 你要不断添加列,其中大部分将是NULL等

我把映射表之间,像这样:

照片 - > photo_cat_x - >类

photo_cat_x可能是这样的:

photo_id int(11) not null, 
    category_id int(11) not null 

把一个或多个行中photo_cat_x每张照片。当您想要查找某个类别中的所有照片时,请从该新表格开始。

希望有帮助!

+0

感谢您花时间回复。这是需要思考的食物。我会放弃它。 – 2011-04-07 22:40:58