我正在进行一个项目,该项目使学生注册特定的课程(“法语”,“数学”等)。学生ID已被选择。真正的一会儿循环,我显示我的类从我的数据库,每个类前面的复选框。我只想以将其发送到php文件的形式发布te选中的复选框,该文件将学生及其选择的班级放入数据库中。但是由于while循环的困难,我似乎无法解决如何仅发布已选中的复选框。我希望有一个人可以帮助我。已经谢谢了!
答案 0 :(得分:0)
最好的方法可能是更改HTML以将类作为数组而不是单个表单元素发布。
<checkbox name="classes[]" value="CLASS_ID_1">
<checkbox name="classes[]" value="CLASS_ID_2">
<checkbox name="classes[]" value="CLASS_ID_3">
<checkbox name="classes[]" value="CLASS_ID_4">
然后,这方面的PHP方面非常简单。仅选中的复选框值将显示在处理页面上。
因此,假设有人检查CLASS_ID_1
,CLASS_ID_3
和CLASS_ID_4
;
print_r($_POST['classes']);
上面的代码应该返回;
array (
"CLASS_ID_1",
"CLASS_ID_3",
"CLASS_ID_4"
)
因此,从本质上讲,它是一组检查值。这意味着您不需要类名或任何其他信息或循环来处理数据。
答案 1 :(得分:-1)
如果可能存在从0到n个主题,则只需小心地为复选框分配一个name属性(因为php将会接收发布的数据),这使您轻松遍历数据。 例如,您有一个表subject(id int,name varchar(255)),然后将每个记录的名称或id用作表单中每个复选框的name属性。 然后在接收已发布数据的php文件或函数上,首先从主题表中检索数据,然后使用foreach循环遍历该数据,在$ _POST数组中搜索特定值 例如。
"require": {
"mailgun/mailgun-php": ">0",
"php-http/curl-client": ">0",
"guzzlehttp/psr7": ">0"
}