我有一个输入表单,用户可以在其中创建自己的“卡片”。数据进入PostgreSQL数据库,我在页面上呈现结果(见下文)。创建卡片后,我希望他们能够选择他们喜欢的卡片,并在下一页(/ play)中仅显示这些选定的卡片。
我的代码(我使用哈巴狗):
div(id="all-cards")
div(class='card')
each card in cards
p Title: #{card.title}
p Question: #{card.question}
p Subquestion: #{card.subquestion}
p Task: #{card.task}
form(name="selection" action="" method="post")
input(type="checkbox" value="card" title="Select" name="option")
label Select
button(type="submit" name="select" class="select-cards") Select The Cards
我应该怎么做?
答案 0 :(得分:0)
我不知道帕格,但似乎每张卡都有一张表格,这意味着你只能选择一张卡片。我建议你只使用一个表格并使用属性" name"每张卡片。
div(id="all-cards")
div(class='card')
form(name="selection" action="" method="post")
each card in cards
p Title: #{card.title}
p Question: #{card.question}
p Subquestion: #{card.subquestion}
p Task: #{card.task}
input(type="checkbox" value="1" title="Select" name="#{card.id}")
label Select
然后,当提交表单时,您将拥有一个数组:
$_POST['id1' => 1,... idn => 1]
与之前的选择相对应,你可以处理它:
foreach($_POST = $key => $value){
$selected[] = $key;
}
答案 1 :(得分:0)
使form
成为所有卡片的包装器。将name
es的checkbox
更改为cards[]
,并更改每张卡的值(将ID或其他内容区分开来)。提交表格时,您将获得一系列卡片。 cards
参数将填充所选卡片的ID。