使用php获取选择框的选定键/值

时间:2016-04-20 06:54:40

标签: php html

如何使用php获取HTML选择框的选定键和值?

<select>
    <option value="KEY">VALUE</option>
</select>

php代码?

6 个答案:

答案 0 :(得分:3)

使用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']] : '';
}

答案 1 :(得分:0)

你必须这样做

<form class="" action="receiver.php" method="post">
  <select name="mykey">
      <option value="KEY">VALUE</option>
  </select>      
</form>

在你的receiver.php中做这个例子

$keys = $_POST['mykey'];

答案 2 :(得分:0)

select的名称是关键,option是值。

<select name="KEY">
  <option value="VALUE">VALUE</option>
  <option value="VALUE_2">VALUE</option>
</select>

在提交时,您将在KEY => VALUE$_GET(无论您使用何种方式处理请求)获得$_POST

答案 3 :(得分:0)

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
?>

答案 4 :(得分:0)

使用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 />";

答案 5 :(得分:0)

我们假设您<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 ) 数据并获取此类值

for(int i=0; i<name.Length; i++)
{
    list.Add(new KeyValuePair<string, string>(name[i], path[i]));
}