【发布时间】:2018-06-25 09:44:42
【问题描述】:
我正在编写一个网站,其中有一个照片库。在每张照片下都有一个带有单个复选框的表单,因此我可以检查它,并且在会话期间它应该保持选中状态。
问题是我写的任何东西都不起作用,每次我选中复选框并点击提交时,它都会一直取消选中。这是我的表格:
<?= $i = 0; ?>
<?php if (count($photos)): ?>
<?php foreach ($photos as $photo): ?>
<?= $checkbox['_id'] = $photo['_id']; ?>
<div class="gallery">
<a target="_blank" href="view?id=<?= $photo['_id'] ?>">
<img src="images/<?= $photo['title'] . "_min." . $photo['extension'] ?>" alt="Toster">
</a>
<div class="desc">Tytuł: <?= $photo['title'] ?> </div>
<div class="desc">Autor: <?= $photo['author'] ?></div>
<div class="desc"><a href="delete?id=<?= $photo['_id'] ?>">Delete</a></div>
<div class="desc">
<form action="remember_ses" method="post">
<input type="checkbox" name="checkbox[<?= $i ?>]" value="wybrane"><?= $photo['_id'] ?>
<input type="hidden" name="id" value="<?= $checkbox['_id']; ?>">
<input type="submit" value="Remember" id="submit">
</form>
</div>
</div>
<?= $i = $i + 1; ?>
<?php endforeach ?>
<?php endif ?>
【问题讨论】:
-
您的会话是started 吗?
-
旁注:您不想这样做:
name="checkbox[<?=$i ?>]"应该只是name="checkbox",因为您每次提交的表单只传递 1 个。 -
另外,我没有看到上面的任何代码可以处理任何试图记住表单提交数据的事情。 _SESSION 和 _POST 都没有。 ??
-
是的,会话已经开始,我需要这样命名复选框,因为稍后我需要包含在其他站点上检查过的图片。