我想在数据库中存储多个复选框值,目前只存储最后一个复选框值,即存储demo3。 其他值不在数据库中。
$preprocedure=array();
$preprocedure[] = $mform->createElement('advcheckbox', 'preprocedure','', 'Demo1', array('group' => 1), array('','demo1'));
$preprocedure[] = $mform->createElement('advcheckbox', 'preprocedure','', 'Demo2', array('group' => 1), array('','demo2'));
$preprocedure[] = $mform->createElement('advcheckbox', 'preprocedure','', 'Demo3', array('group' => 1), array('','demo3'));
$mform->addGroup($preprocedure, 'preprocedure', get_string('preprocedure', 'assignsubmission_metadata'),array('<br>'), false);
答案 0 :(得分:0)
这是因为您用于元素的名称,一次只允许设置一个值。如果要存储多个值,则应使用数组格式的名称。
示例一:
def arrange(str1: String, str2: String): (String, String) = {
if (str1 == "YELLOW") {
return (str1, str2)
} else {
return (str2, str1)
}
}
会给你:
$preprocedure=array();
$preprocedure[] = $mform->createElement('advcheckbox', 'preprocedure[demo1]','', 'Demo1', array('group' => 1), array('',1));
$preprocedure[] = $mform->createElement('advcheckbox', 'preprocedure[demo2]','', 'Demo2', array('group' => 1), array('',1));
$preprocedure[] = $mform->createElement('advcheckbox', 'preprocedure[demo3]','', 'Demo3', array('group' => 1), array('',1));
$mform->addGroup($preprocedure, 'preprocedure', get_string('preprocedure', 'assignsubmission_metadata'),array('<br>'), false);
}
示例二:
object(stdClass)#181 (2) {
["preprocedure"]=>
array(3) {
["demo1"]=>
string(1) "1"
["demo2"]=>
string(0) ""
["demo3"]=>
string(1) "1"
}
["submitbutton"]=>
string(12) "Save changes"
会给你:
$preprocedure=array();
$preprocedure[] = $mform->createElement('advcheckbox', 'preprocedure[1]','', 'Demo1', array('group' => 1), array('','demo1'));
$preprocedure[] = $mform->createElement('advcheckbox', 'preprocedure[2]','', 'Demo2', array('group' => 1), array('','demo2'));
$preprocedure[] = $mform->createElement('advcheckbox', 'preprocedure[3]','', 'Demo3', array('group' => 1), array('','demo3'));
$mform->addGroup($preprocedure, 'preprocedure', get_string('preprocedure', 'assignsubmission_metadata'),array('<br>'), false);
}
希望这有帮助。
此致
和Sandeep