我正在为我的注册页面制作国家/地区列表, 但我想知道如何将其实施到我的注册表中。
我在country.php文件中列出了该列表
<select name="Country">
<option selected="selected" </option>
<option value="">Country...</option>
<option value="Afganistan">Afghanistan</option>
<option value="Albania">Albania</option>
<option value="Algeria">Algeria</option>
</select>
在我的注册页面中,我在表格中使用
<tr>
<th>Land </th>
<td><?php include 'country.php'; ?></td>
</tr>
但是当我提交它时,似乎并没有将值保留在表单中。
如何使$ Country的值等于country.php文件中选择的选项?
非常感谢:)
答案 0 :(得分:1)
<option selected="selected" </option>
应该是
<option selected="selected"></option>
答案 1 :(得分:0)
我认为行破坏你的代码:
<option selected="selected" </option>
所以你只需要附上<option>
标签。
您还可以从任何网站提取国家/地区列表,如雅虎,只需转到单页,然后从浏览器转到view =&gt;页面源。
答案 2 :(得分:0)
除了其他人指出的语法错误之外,你需要保存数组中的所有国家/地区,并循环数组,每次迭代回显一个选项/国家/地区。并且,使select
记住您之前输入的内容的部分是将selected="selected"
部分放在所选国家/地区选项中。
总的来说,它看起来像这样:
function getSelectOfCountries($chosenCountry = null)
{
$countries = array('Afganistan', 'Albania', 'Algeria', ...);
echo "<select name='country' id='country'>\n";
echo "<option value=''>Country...</option>\n";
foreach ($countries as $country)
{
echo "<option value='$country'";
if ($chosenCountry == $country)
{
echo " selected='selected'";
}
echo ">$country</option>\n";
}
}
您将该功能放在包含的文件中。并采取以下形式:
<?php
if (isset($_GET['country']))
{
$country = $_GET['country'];
} else {
$country = null;
}
?>
<form ...>
...
<tr>
<th><label for="country">Land </label></th>
<td><?php getSelectOfCountries($country);?></td>
</tr>
...
</form>