我将获得一个json格式的服务器响应,下面是json响应,这样有很多oragnisations,其中只有一个组织是默认组织,所以每次有机会获得更大的json组织变化,对应于组织有一个表单字段的位置在我的`html表单中,我必须从其中许多选择一个位置,在选择位置,有另一个表单字段称为建设将有很多值选择一个,将有另一个Web服务
[{"location":[{"building":["Default Building"],"name":"Default Location"}],"name":"Default Organization"}]
答案 0 :(得分:0)
我已经尝试过这个,我应该调用一个Web服务,它将发送一个包含组织名称的json响应,在选择组织名称后,一些组织可以有多个位置,所以只有相应的所选组织的位置必须显示在位置下拉框中,之后会出现一个名为building的选项,其中某个位置可以包含多个建筑物,因此只有所选位置的建筑物必须显示在建筑物组合框中。
这是我已完成的代码
<head>
<title>PROFILE INFORMATION OF USER</title>
<link rel="stylesheet" href="style.css" type="text/css"/>
</head>
<body>
<div id="contact"><?php
session_start();
$url='my web service';
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($useridofuser));
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json"));
$response= curl_exec($ch);
// echo('\n'."Server response : \n \n".$response);
curl_close($ch);
//parsing the json response from server
$jsonde="$response";
$org = array();
$loc = array();
$bui = array();
$items = json_decode($response);
foreach( $items as $each ){
$loc[]=$each->location[0]->name;
$bui[]=$each->location[0]->building[0];
$org[]=$each->name;
}
?>
<select name="category_id">
<option value=""></option>
<?php
foreach($org as $key=>$val)
{?>
<option value="<?php echo $key; ?>"><?php
echo $_SESSION['organisation'];
?></option>
<?php
}
?>
</select>
<select name="category_id">
<option value=""></option>
<?php
foreach($loc as $key=>$val)
{?>
<option value="<?php //echo $key; ?>"><?php echo $val; ?></option>
<?php
}
?>
</select>
<select name="category_id">
<option value=""></option>
<?php
foreach($bui as $key=>$val)
{?>
<option value="<?php //echo $key; ?>"><?php echo $val; ?></option>
<?php
}
?>
</select>
</body>
</html>