使用具有相同键的JSON数组在php中创建动态选择选项值

时间:2018-07-17 11:36:05

标签: php json select dynamic option

请有人可以帮助我。 这是我的JSON数组

 [
 {
   "Ward": "Oduma 1",
   "Polling Unit": "ACHARA 001"
 },
 {
   "Ward": "Oduma 1",
   "Polling Unit": "ACHARA 002"
 },
 {
   "Ward": "Oduma 1",
   "Polling Unit": "ACHARA 003"
 },
 {
   "Ward": "Oduma 2",
   "Polling Unit": "ACHARA 004"
 },
 {
   "Ward": "Oduma 2",
   "Polling Unit": "ACHARA 005"
 },
 {
   "Ward": "Oduma 2",
   "Polling Unit": "ACHARA 006"
 },
]

所以我试图创建一个动态选择框,在第二个框中填充一个与数组中对应的值。

PHP读取JSON文件

<?php
$url = 'lga.json'; 
$data = file_get_contents($url);
$characters = json_decode($data, true); 


?>

已提取为HTML

<select name="ward_of_res">
   <option value="ward">Select Ward</option>
     <?php foreach ($characters as $character) :?>
    <option value="<?php echo $character['Ward']; ?>"><?php echo $character['Ward'] . "\n"; ?>
    </option>
     <?php endforeach>
</select>

<select name="poll_of_res">
   <option value="ward">Polling Unit</option>
     <?php foreach ($characters as $character) :?>
    <option value="<?php echo $character['Polling Unit']; ?>"><?php echo $character['Polling Unit'] . "\n"; ?>
    </option>
     <?php endforeach>
</select>

面临的挑战是第一个选择选项 正在一起获取所有相同的密钥,我也想要它 这样,当您选择病房时,它只会获取 该病房的投票站。

这就是我所拥有的:

Selectbox 1     Selectbox 2

Oduma 1         ACHARA 001    
Oduma 1         ACHARA 002
Oduma 1         ACHARA 003      
Oduma 2         ACHARA 004
Oduma 2         ACHARA 005
Oduma 2         ACHARA 006

这就是我想要的:

    Selectbox 1 Selectbox 2

Oduma 1         ACHARA 001    
                ACHARA 002
                ACHARA 003

Oduma 2     ACHARA 004
            ACHARA 005
            ACHARA 006

所有变化都随用户选择而动态变化。谢谢大家。

0 个答案:

没有答案