1

我有一个名为“categories.php”的页面。我用它来显示不同类别的不同内容。

例子:

mysite.com/categories.php?cat=dance (shows dancing content)
mysite.com/categories.php?cat=sing (show singing content)
Etc...

该数据库有两个不同的表:

Categories
categories_id
categories_title

Categories_content
cat_content_id
categories_id
categories_text
categories_image

到现在为止还挺好。但现在我面临的问题。假设我想显示所有类别的内容。通常我必须为所有类别一一添加相同的内容。但我认为应该有一种方法可以只添加一次并在所有页面上显示。

我忘了提到我使用了一个带有下拉菜单的表单,其中的类别是我想为其添加内容的列表。

任何想法如何做到这一点?我必须使用多个 SQL 查询来实现这一点吗?

也许我只是让自己变得困难,对此有一个简单的解决方案。

提前致谢。兆瓦

4

2 回答 2

1

您应该能够在没有 where 子句的情况下使用 SQL。它应该返回所有 id,而不管 categories_id。

Select cat_content_id from categories_content;
于 2013-02-07T20:29:37.550 回答
1

如果您创建一个名为“all”或其他名称的新类别,您可以在查询中实现这一点。

所以而不是:

SELECT * FROM Categories JOIN [...] WHERE categories_title = '{$_GET['cat']}'

采用:

SELECT * FROM Categories JOIN [...] WHERE categories_title = '{$_GET['cat']}' OR categories_title = 'all'

然后在类别列表中,过滤掉“全部”。

有很多方法可以做到这一点,我的可能不是最好的,但它是我头脑中最好的。

于 2013-02-07T20:30:02.907 回答