我正在使用PHP和MySQL构建一个Trello样式板,如下面的截图所示。
我的每个专栏/板都来自数据库记录。
SELECT * FROM `order_status` ORDER BY `sort_order` ASC
根据我的order_status
表中的MySQL查询结果,我将循环遍历它以创建KanBan板中的每个Board / Column。
我有第二个MySQL查询,它将获得将进入电路板列的所有m cards
。
下面的图片显示了积压和正在进行中的电路板列,因此当我获得卡片记录时,我需要将它们打印到正确的电路板下的屏幕上与电路板名称匹配的列。
获取我的记录的MySQL查询可能看起来像这样......
SELECT * FROM `board_cards` ORDER BY `modified_date` ASC
因此,在我的board_cards
结果中,有一个board
列,其值与其中一个电路板名称相匹配。
我如何在每个电路板列下打印汽车?
关于这看起来如何(不是真正的代码)
$boardColumnNames = 'SELECT * FROM `order_status` ORDER BY `sort_order` ASC'
while($boardColumnNames){
// loop over each board column and print out all the board card records that belong on each board column
}
考虑到变量中的电路板名称和变量中的电路板卡以及每个电路板卡的电路板值是否会告诉它属于哪个电路板,有人可以帮助了解PHP的外观吗?
最好是获取我所有的板卡记录并循环遍历它们,将每块板的所有卡放入其中;自己的阵列变量。之后,在循环构建每个板/列时,我可以遍历属于该板的阵列。
OR
在我的数据库结果中使用某种JOIN以某种方式立即执行此操作会更好吗?
答案 0 :(得分:0)
在您的卡片表中添加 board_column_id 字段。此列引用了一个 board_columns 表,其中包含您的所有列。您想首先查询所有 column_boards,遍历它们并通过 column_id 查询您的卡片表。这是一些伪代码:
columns = "select * from column_boards order by column_order";
foreach(col in columns) {
cards = "select * from cards where column_id=col.id";
foreach(card in cards) {
draw(card);
}
}