Php 将提供一个选择选项的下拉列表更改为复选框中的多个选项
我正在修改一个表单,这是我从未有过的工作经验。作为记录,我没有编写PHP代码 简言之:html/php表单有五个值(研究领域)的下拉列表,您只能选择其中一个。但是客户希望能够选择多个。所以现在我想扔掉下拉列表,改为使用复选框 我更愿意做的是目前设置的最小mods 注*这是一个动态下拉列表;因此,这些值将从另一个表中提取并提交到数据库 以下是我正在使用的代码:Php 将提供一个选择选项的下拉列表更改为复选框中的多个选项,php,database,drop-down-menu,checkbox,Php,Database,Drop Down Menu,Checkbox,我正在修改一个表单,这是我从未有过的工作经验。作为记录,我没有编写PHP代码 简言之:html/php表单有五个值(研究领域)的下拉列表,您只能选择其中一个。但是客户希望能够选择多个。所以现在我想扔掉下拉列表,改为使用复选框 我更愿意做的是目前设置的最小mods 注*这是一个动态下拉列表;因此,这些值将从另一个表中提取并提交到数据库 以下是我正在使用的代码: $query_fields_of_research = "SELECT * FROM tblOpportunityFieldOfResea
$query_fields_of_research = "SELECT * FROM tblOpportunityFieldOfResearch ORDER BY
field_of_research_en ASC;";
$sql->query($query_fields_of_research, SQL_ALL, SQL_ASSOC);
$fields_of_research = $sql->record;
?>
<select name="strFieldOfStudy_en" id="strFieldOfStudy_en">
<?php
foreach ($fields_of_research as $field) {
$selectedValue= "";
if ($strFieldOfStudy_en == $field['id'])
$selectedValue= " selected";
echo "\t\t\t".'<option
value="'.$field['id'].'"'.$selectedValue.'>'.$field['field_of_research_en']."
</option>\n";
}
?>
</select>
$query\u fields\u of\u research=“SELECT*FROM tblOpportunityFieldOfResearch ORDER BY
研究领域;
$sql->query($query\u字段\u of\u research,sql\u ALL,sql\u ASSOC);
$fields\u of\u research=$sql->record;
?>
在此之后,提交的数据也会更新到表格中的网页,其中包含以下内容:
<tr>
<td>Fields of research</td>
<td>
<?php
$fieldsOfResearch = array('1', '2', '3', '4', '5');
if (in_array($opp['strfieldofstudy_en'], $fieldsOfResearch)){
echo $iri->getFieldOfResearch($opp['strfieldofstudy_en'], 'en');
}
else
echo $opp['strfieldofstudy_en'];
?></td>
</tr>
研究领域
如何将下拉列表更改为具有最少mod的复选框?您可以这样做
在带有选择框的html页面中
替换:
<select name="strFieldOfStudy_en" id="strFieldOfStudy_en">
<?php
foreach ($fields_of_research as $field) {
$selectedValue= "";
if ($strFieldOfStudy_en == $field['id'])
$selectedValue= " selected";
echo "\t\t\t".'<option
value="'.$field['id'].'"'.$selectedValue.'>'.$field['field_of_research_en']."
</option>\n";
}
?>
</select>
作者:
我希望这能有所帮助为什么不将select与multiselect opportunity一起使用?
<?php
$i = 1;
foreach ($fields_of_research as $field) {
$selectedValue= "";
if ($strFieldOfStudy_en == $field['id'])
$selectedValue= 'checked="checked"';
echo '<checkbox id="strFieldOfStudy_en'.$i.'" name="strFieldOfStudy_en[]"
value="'.$field['id'].'"'.$selectedValue.'>'.$field['field_of_research_en'];
$i++;
}
?>
if (in_array($opp['strfieldofstudy_en'], $fieldsOfResearch)){
echo $iri->getFieldOfResearch($opp['strfieldofstudy_en'], 'en');
}
else
echo $opp['strfieldofstudy_en'];
foreach($_POST['strFieldOfStudy_en'] as $item) {
if (in_array($item, $fieldsOfResearch)){
echo $iri->getFieldOfResearch($item, 'en');
}
else
echo $opp['strfieldofstudy_en'];
}
// here $_POST['strFieldOfStudy_en'] includes all the values of checkbox checked in
//the html form
// foreach extracts each value from $_POST['strFieldOfStudy_en'] into $item(say ids
//1,2,3,...).