PHP的多行/列表

时间:2014-08-05 07:42:36

标签: php html mysql sql html-table

我需要根据来自MySQL数据库的数据生成HTML表。表格很复杂,所以我会在这里解释一下。

数据:

Article Name, Price, Date

Article1, 100.5, 2014-08-01
Article2, 90.0 , 2014-08-01
Article3, 80.0 , 2014-08-01

Article2, 90.0 , 2014-08-02
Article3, 80.0 , 2014-08-02

Article1, 100.5, 2014-08-03
Article3, 80.0 , 2014-08-03

这是我从数据库获得的数据集。每天我们都会得到一篇文章及其价格。但可能是一天没有文章。在这种情况下,我们需要为此日期设置零价格。所以现在我必须构建一个水平表来比较结果。有点像这样:

截图

Screenshot

有人可以告诉我如何使用PHP / HTML生成这样的表吗?

1 个答案:

答案 0 :(得分:0)

您的表格违反了第一个普通表单,因为您有重复数据。看这里:Normal forms

创建数据库的更好方法是将表拆分为2.首先,您有一个表

Article
-----------
ID     Article name

和一个表

Price
----------------
ID    fkArticle    Price     Date

fkArticle被称为外键,是Article表的链接。 ID是主键,应自动递增。 ID和fkArticle都是类型' int'

这样做要好得多,因为如果价格不存在,你可以避免价格为0。你可以提取像这样的文章的所有价格

SELECT * FROM Price WHERE fkArticle = 1

这将为您提供ID = 1

的文章的所有价格

您还可以通过搜索日期轻松获得第一个结果

SELECT * FROM Price INNER JOIN Article ON Article.ID=fkArticle WHERE Date="2014-08-01" 

这是一种更加灵活的方式,并且遵循Normalforms。

相关问题