$_POST['formname'] 问题

$_POST['formname'] issue

我对 $_POST 有一个小问题。 我有一个 Select 有多个选项。在每个选项中,我都有一个值和另一个属性,数据,我用来从 select.

中获取 2 个值的数据
<select id="theId" name="theName" onchange="changeSelect();">
    <option name="0" value="0.00" data="0.00"<?php if($val==0.00)echo 'selected=""';?>>0</option>
    <option name="1" value="10" data="15" <?php if($val==10)echo 'selected=""';?>>1</option>
    <option name="2" value="15" data="20" <?php if($val==15)echo 'selected=""';?>>2</option>
    <option name="3" value="20" data="30" <?php if($val==20)echo 'selected=""';?>>3</option>
</select>

然后我使用以下代码获取值:

var val1 = parseFloat($("select#theId option:selected").attr('value'));
var val2 = parseFloat($("select#theId option:selected").attr('data-us'));

一切正常...除非我尝试将值存储在数据库中...我只能使用

$data = array(
        'val1' => $_POST['theName'],
        'val2' => $_POST['theName']
    );

据我所知,因为 $_POST 使用的是表单名称 ($_POST['formname'])。 如果我使用上面的代码,它将为 val1 和 val2 存储 val1 的值。

还有其他方法可以存储这些值吗?

向表单添加隐藏输入

<input type="hidden" name="theNameData" id="theNameData">

并将数据复制到隐藏输入。

$("#theNameData").val(val2);

然后你可以在PHP中使用$_POST['theNameData']得到这个。