需要$ post文本,而不是下拉选择元素的值

时间:2013-09-20 11:47:57

标签: php forms post

<select name="months" id="months" >
        <option value="0" >Select Months *</option>
        <option value="3000" >6 Months</option>
        <option value="6000" >12 Months</option>
        <option value="9000" >18 Months</option>
</select>



$message .= "<br>Selected Months : " . $_POST['months']; 

需要$ post post text,而不是选中下拉元素的值。

3 个答案:

答案 0 :(得分:2)

您无法发布文字。您只能发布任何输入类型的值。

要发布文字,请更改选择框:

<select name="months" id="months" >
        <option value="0" >Select Months *</option>
        <option value="6 Months" >6 Months</option>
        <option value="12 Months" >12 Months</option>
        <option value="18 Months" >18 Months</option>
</select>

OR

如果要发布文本和值,请在提交表单之前使用隐藏字段存储所选项目的文本,然后通过JS或jQuery将文本放入该隐藏字段中。你将通过隐藏的字段获得文本。

答案 1 :(得分:1)

您应该更改value然后:

<select name="months" id="months" >
        <option value="0" >Select Months *</option>
        <option value="6 Months" >6 Months</option>
        <option value="12 Months" >12 Months</option>
        <option value="18 Months" >18 Months</option>
</select>

毕竟,这是发布的VALUE。

答案 2 :(得分:0)

您可以通过以下方式完成此操作:

array-config.php - 带有选择框选项的配置文件,可根据需要包含这些选项。

<?php
$select_box = array(
  '0' => 'Select Months *',
  '3000' => '6 Months',
  '6000' => '12 Months',
  '9000' => '18 Months',
);
?>

HTML(PHP脚本)

<?php
include_once('array-config.php');
echo '<select name="months" id="months">';
foreach($select_box as $key => $val) {
   echo '<option value="' . $key . '">' . $val . '</option>';
}
echo '</select>';
?>

表单发布检索脚本

<?php
include_once('array-config.php');
$message .= "<br>Selected Months : " . $select_box[$_POST['months']];
?>

希望它有所帮助。