首页 > 解决方案 > 通过 php 中的 $_POST 访问具有多个属性的选择选项

问题描述

我正在尝试为选择元素提取选项标签中的属性。选择元素是动态加载的。

具体表单级代码如下:

<form name='add'>
  Age: <select name='age[]'>
    <option value='1' stud_name='sre' st_address='address1'>23</option>
    <option value='2' stud_name='sam' st_address='address2'>24</option>
    <option value='5' stud_name='john' st_address='address13'>25</option>
  </select>
  <input type='submit' name='submit'/>
</form>

在我的 PHP 文件中,我通过以下方式访问提交的数据:$_POST['age'];如何获取其他属性及其值?

标签: phphtml

解决方案


最好的方法是创建单独的输入字段并在select更改时通过 Javascript 控制它们的值。

但是如果你坚持通过单个传递多个值select,你可以考虑使用json,这里是一个例子:

HTML:

<form name="add">
  Age:
  <select name="age">
    <option value='{"age":"1","stud_name":"sre","st_address":"address1"}'>23</option>
    <option value='{"age":"2","stud_name":"sam","st_address":"address2"}'>24</option>
    <option value='{"age":"5","stud_name":"john","st_address":"address13"}'>25</option>
  </select>
  <input type="submit" name="submit"/>
</form>

PHP:

<?php

  $age = json_decode($_POST['age']);

?>

推荐阅读