我有一个复选框列表,它总是在增长,例如..
<li><input type="checkbox" value="19384">Nutrition</li>
<li><input type="checkbox" value="22450">Weight Loss</li>
<li><input type="checkbox" value="98957">Fitness</li>
<li><input type="checkbox" value="34916">Lifestyle</li>
让我们说我检查营养和健身,保存已检查的数据库架构/结构的最佳方法是什么,以便我以后可以检索它?
主要问题是这些复选框的数量总是在增加,因此明天这四个复选框最多可以有7个复选框或10个,并且总是会增加,所以我无法在数据库中为每个复选框设置特定数量的表格。复选框值。
我无法理解如何将已检查的数据库上传到数据库,然后再检索它们?
我是否可以将值上传到每个选定的MySQL,然后在检索它们时我必须在列表之间进行检查并与已经上传到MySQL的那些匹配,然后如果是这样,请使用输入中checked="yes"
?我也使用PHP。
答案 0 :(得分:1)
该复选框只是告诉您某些事情是......等待......是否检查过。通过选中一个框可以获得一个可能的值,即复选框已被选中。如果未选中,您将不会收到任何内容。
您需要做的第一件事是确保可以实际检查复选框的状态。这意味着您需要为复选框命名,不要在其中添加值。
<li><input type="checkbox" name="nutrition">Nutrition</li>
<li><input type="checkbox" name="weight_loss">Weight Loss</li>
<li><input type="checkbox" name="fitness">Fitness</li>
<li><input type="checkbox" name="lifestyle">Lifestyle</li>
现在,将检查是否检查这些内容的php将类似于:
if (isset($_POST['nutrition']))
{
//Code to process nutrition being checked
}
这就是全部 - 你为每个人都这样做。
就数据库而言,由于您认为您将修改类型,因此您应该创建一个单独的表,将检查其中一个复选框的人与另一个具有相关信息的记录联系起来。
例如,您有一个显示某人的表:
那是人员表。下一个表将是您的查找表:
最后一个表是包含复选框类型的表:
这就是你如何摆放它,以便你可以随时添加更多。您还可以通过查询包含所有复选框名称的表来动态构建复选框列表。
如果你刚刚开始编程和数据库,这有点多,但它绝对是正确的方法。