我正在使用下面的代码将选定的数组值输入到我的数据库中,具体取决于他们选择的国家/地区。
$Location = mysql_real_escape_string($_POST['location'], $Link);
MYSQL_Query ("INSERT INTO users(location)VALUES('$Location')");
$countries = array(
"AF" => "Afghanistan",
"UK" => "United Kingdom",
"US" => "United States",
"AS" => "American Samoa", //etc..
echo '<select name="location">';
foreach($countries as $countrycode =>$country) {
echo '<option value="' . $countrycode. '">' . $country . '</option>';
}
echo '</select>';
一切正常,除了我的MySQL数据库中存储的值是$countrycode
因此英国对英国的节约,我希望它能够作为英国储存。我哪里错了?
PS;如果有人愿意,我有完整的国家/地区列表,亲切的问候,Shanie。
编辑:问题解决了! 替换'<option value="' . $countrycode. '">' . $country . '</option>';
与'<option value="' . $country. '">' . $country . '</option>';
感谢Chris。
答案 0 :(得分:1)
您需要将value
的{{1}}设置为option
,而不是name
。
code
否则就是代码。
文档:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/option
如果选择此选项,则此属性的内容表示要随表单提交的值。如果省略此属性,则从选项元素的文本内容中获取值。