我在树枝模板中创建了一个表。在第一列中,您可以选中一个复选框。选中复选框后,它应删除该行。我的问题是如何让数据删除它。
这是我的表
<table class="table table-bordered table-striped table-hover">
<thead>
<tr>
<th> <label for="checbox">Check</label></th>
<th>id</th>
<th>Name</th>
<th>Age</th>
</tr>
</thead>
<tbody>
{% for products in user.products %}
<tr>
<td><input type="checkbox" name="checkBox" id="ic" value=true/></td>
<td >{{ products.id }}</a></td>
<td >{{ products.name }}</td>
</tr>
{% endfor %}
</tbody>
</table>
if(isset($_POST['checkBox'])== 'true'){
$products = $_POST['??????'];
$zl = 0;
foreach ($products as $pr)
{
$em = $this->getDoctrine ()->getManager ();
$pr = $em->getRepository('UserBundle:Products')->find($pr);
$user->removeProduct($pr);
++$zl;
}
$em->persist($user);
$em->flush();
}
我如何获取数据? $products = $_POST['??????'];
我不知道我必须在这里放置哪个参数来从所选复选框中获取数据。
答案 0 :(得分:0)
将复选框的值从true
更改为行的产品ID,并检查$_POST['checkBox']
是否为数组且不为空。
替换html部分
<input type="checkbox" name="checkBox" id="ic" value=true/>
带
<input type="checkbox" name="checkBox[]" id="ic" value="{{ products.id }}" />
和php部分
if(isset($_POST['checkBox'])== 'true'){
$products = $_POST['??????'];
与
if(isset($_POST['checkBox']) && !empty($_POST['checkBox'])){
$products = $_POST['checkBox'];