如何使用MySQL/PHP对数据库结果进行排序和显示

如何使用MySQL/PHP对数据库结果进行排序和显示,php,mysql,database,Php,Mysql,Database,我使用PHP将网站上的项目分类到不同的位置/不同的分区。我在每个div中都有一个脚本,我希望在其中显示结果,因此如果有4个div,则有4个脚本。(4个类别)每个脚本在我的页面头部都有一个查询 类别/div 1的MySQL查询 $sql_category1 = <<<SQL SELECT * FROM `list_items` WHERE `category` = 1 ORDER BY `rating` ASC; SQL; if(!$category1 = $

我使用PHP将网站上的项目分类到不同的位置/不同的分区。我在每个div中都有一个脚本,我希望在其中显示结果,因此如果有4个div,则有4个脚本。(4个类别)每个脚本在我的页面头部都有一个查询

类别/div 1的MySQL查询

$sql_category1 = <<<SQL
  SELECT *
  FROM `list_items`
  WHERE `category` = 1 
  ORDER BY `rating` ASC;
SQL;

if(!$category1 = $db->query($sql_category1 )){
    die('There was an error running the query [' . $db->error . ']');
}
$sql\u类别1=
我的目标是:当我在表格中输入数据时,有两个项目可以被归类为两个不同的东西,所以两个不同的类别,我必须制作两份副本。这样,项目将同时出现在两个类别中。同一项目有两个不同的类别。我给其中一个项目的类别值为1,给另一个项目的类别值为2

有没有一种方法可以为同一个项目提供两个单独的类别值,而不是为同一个项目创建两个单独的条目?这样,当我的脚本运行并对它们进行排序时,项目将显示在两个类别中

我试过1,2,1:2和1;2作为项目的价值。但我敢肯定,这一点都不接近

提前谢谢

制作3张表格:

类别(id、名称等)

项目(id、名称等)

项目类别(id项目、id类别)

它们使它们在您的查询中加入,例如,您的第一个查询将成为

SELECT *
FROM `list_items` t,`item-category`
WHERE `id_category` = 1
  and `id_item` = t.`id`
ORDER BY `rating` ASC;

拥有连接表后,您可以在其中放入任何您想要的连接

编辑:不确定您得到的是什么。对不起,这是新的。好的,我列出的例子几乎就是我在生产中如何使用它,然而,我使用的列远远不止3列,有30列。我刚刚删除了上面示例中的其余代码,只包含了3列。你的方法仍然有效吗?而不是我要做30张新桌子?我真正需要做的就是给物品类别两个值或3个值或4个值。这是一种有效的方法。请参见从开始到所有标准表格,以了解如何制作表格。这是一篇关于你的案例的文章现在我坐在Oracle数据库前面,有500个表:)嗯,我可能需要重做我的整个数据库,或者至少重做我创建内容的方式。我使用电子表格。我在category列中给出一行1-4个值,而不是创建4个条目,然后将其上传到数据库。有什么想法吗?在关系数据库中根本无法做到这一点。至少,这将是一种非常奇怪的方式
SELECT *
FROM `list_items` t,`item-category`
WHERE `id_category` = 1
  and `id_item` = t.`id`
ORDER BY `rating` ASC;