-1

json 形式のサーバー応答を取得します。以下は、このような json 応答です。多くの組織があり、そのうちの 1 つの組織のみが既定の組織であるため、組織が変更されるたびに、より大きな json を取得する可能性があります。 、組織に対応して、私の html フォームに場所のフォーム フィールドがあり、これらの多くの場所から 1 つの場所を選択する必要があります。場所を選択すると、建物と呼ばれる別のフォーム フィールドがあり、1 つを選択すると多くの値が表示されます。別のWebサービスがあります

[{"location":[{"building":["Default Building"],"name":"Default Location"}],"name":"Default Organization"}]
4

1 に答える 1

0

組織名を選択した後、組織名を含むjson応答を送信するWebサービスを呼び出すことになっています。一部の組織は複数の場所を持つことができるため、対応する場所のみ選択した組織は場所のドロップ ボックスに表示される必要があります。その後、建物と呼ばれるオプションがあり、特定の場所に複数の建物を含めることができるため、選択した場所の建物のみが建物のコンボ ボックスに表示される必要があります。

ここに私が完成したコードがあります

<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>
于 2013-03-25T09:35:52.990 に答える