3 回答
TA贡献1796条经验 获得超10个赞
首先创建一个关联数组并将语言及其值存储在其中:
$languages = array('czech' => 'N','english' => 'Y','german' => 'N','slovak' => 'N','russian' => 'N','french' => 'N','spanish' => 'Y','italian' => 'N' );
然后:
foreach($languages as $key => $value) {
if ($value=='N'){
echo "<input type='checkbox' name='" . $key . "' value='" . $value . "'> " . $key . "<br>";
}
else{
echo "<input type='checkbox' name='" . $key . "' value='" . $value . "' checked> " . $key . "<br>";
}
}
结果将是:
TA贡献1772条经验 获得超8个赞
问题在于,尝试将其用作数组的$rowlang一部分echo是一个问题,因为它是一个数组。
相反,您可以创建一个您想要输出的语言数组,这也给出了要显示为值的名称。所以foreach()在这个数组上使用 a并检查$rowlang数组以查看它是否已设置。而不是重复整个 HTML,这只是设置checked属性。
// Need to expand this array for all the countries you need
$languages = array("german" => "Germany","english" => "English");
foreach($languages as $language => $label) {
if ($rowlang[$language]=='N'){
$checked = '';
}else{
$checked = ' checked';
}
echo "<input type='checkbox' name='" . $language . "' value='" . $language . "'$checked>" . $label . "<br>";
}
这将输出类似
<input type='checkbox' name='german' value='german'>Germany<br>
<input type='checkbox' name='english' value='english' checked>English<br>
- 3 回答
- 0 关注
- 235 浏览
添加回答
举报