如何使用php获取HTML选择框的选定键和值?
<select>
<option value="KEY">VALUE</option>
</select>
php代码?
对于PHP,它不是直接的。
然而,使用阵列可以实现它
在一个通用函数中获取和排列所有选项:
$options = array();
$options[1] = 'one';
$options[2] = 'two';
$options[3] = 'three';
显示下拉菜单如下:
<select name="opt">
<option value=""></option>
<?php
if (! empty($options)) {
foreach ($options as $key => $val) {
?>
<option value="<?php echo $key;?>"><?php echo $val;?></option>
<?php
}
}
?>
</select>
在表单发布的位置,再次获取数组。
//$options : fetch from common function.
if (isset($_POST['opt'])) {
echo "key: " . $_POST['opt'];
echo "<br/>";
echo "value: " . isset($options[$_POST['opt']]) ? $options[$_POST['opt']] : '';
}
你必须这样做
<form class="" action="receiver.php" method="post">
<select name="mykey">
<option value="KEY">VALUE</option>
</select>
</form>
在你的receiver.php中做这个例子
$keys = $_POST['mykey'];
select
的名称是键,option
是值。
<select name="KEY">
<option value="VALUE">VALUE</option>
<option value="VALUE_2">VALUE</option>
</select>
提交时,您将在$_GET
或$_POST
中获得一对KEY => VALUE
(无论您用于处理请求)
page1.html:
<form action="page2.php" name='add' method="post">
<select name="foo">
<option value="my_value">my_value</option>
</select>
<input type='submit' name='submit'/>
</form>
page2.php:
<?php
$result = $_POST['foo'];
echo "result = ".$result."<br>";//output: result = my_value
?>
使用PHP,您可以使用以下内容:
将Key和Value作为POST数据,用符号分隔,例如"/"。
HTML:
<select name="myselect">
<option value="KEY/VALUE">VALUE</option>
</select>
然后在PHP中,使用explode()函数分离该键。
PHP:
$pair = explode("/", $_POST["myselect"]);
$key = $pair[0];
$value = $pair[1];
print "Key: $key<br />";
print "Value: $value<br />";
假设您有类似的form
<select name="country">
<option value="IN_India">India</option>
<option value="CN_China">China</option>
<option value="AE_UAE">UAE</option>
</select>
提交后,你的$_POST
会看起来像这个
print_r($_POST);
Array
(
[country] => IN_India
}
现在解释你的$_POST
数据,并获取像这样的值
$data = explode('_', filter_input(INPUT_POST, 'country'));
print_r($data);
Array
(
[0] => IN
[1] => India
)