php - 将 php webservice json 响应发送到 javascript

标签 php javascript forms drop-down-menu

我想将 json 格式的 php web 服务响应调至 javascript,该响应是从 php web 服务调用获得的 这是我的代码

<?php
session_start();
$url='webservice url';
    $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";
    $_SESSION['json']=$jsonde;
 $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;
 }
 ?> 

这里我获取$org中的组织名称,$bui包含建筑物,$loc包含位置 我在这段代码下面有一个表格

    <sript>
    var json = "<?php echo $response ?>";
    alert(json);
 </script>
 <form>
 <label for="orgname">Organisation Name</label>
                    <select style="width: 305px;text-align:left ;"  name="category_id" id="category_id">
                    <option value="">Select</option>
                    <?php foreach($org as $key=>$val){?>
                    <option value="<?php echo $val; ?>"><?php echo $val;?></option>
 <?php
 }
 ?>                      </select>

                    <p>
        <label name="location">Location</label>

                     <select style="width: 305px;" name="category_id1" id="category_id1" onchange="ajax(this);">
                     <option value="">Select</option>
                     </select>
                    </p>
                    <p>
        <label for="building">Building</label>

                    <select style="width: 305px" name="category_id2" id="category_id2">
                    <option value="">Select</option>
                    </select>

在组织中,我想将我从组织组合框中选择的值与从 php Web 服务返回的 json 数组进行比较,并返回包含该特定组织的对象,实际上我的问题是如何存储json 数组转换为 javascript 变量或其他东西。 谢谢你

最佳答案

为什么不直接使用您检索到的 json 内容设置一个 javascript 变量,如下所示:

<?php 
    $response = "YOUR JSON RESPONSE";
?>
<script type="text/javascript">
    var json = "<?php echo json_encode(json_decode($response)) ?>";
</script>

请确保以正确的方式转义 $response,以防止损坏您的 javascript。

关于php - 将 php webservice json 响应发送到 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15947650/

相关文章:

php - MySQL 版本之间的密码实现不兼容

php - Yii - findAll 排序依据

php - 在 PHP 中发布数据值时出错

javascript - 无法在 Firefox 中设置 element.style.float?

javascript - 给字符串加粗

javascript - 在 javascript 中使用替换时不应替换属性

php - 在没有插件 reCAPTCHA 的情况下验证用户的答案

java - jQuery 地址 - 表单提交后重定向

php - 将来自两个不同 wordpress 的帖子合并到一个按日期排序的帖子页面

javascript - 为什么 myForm.$subscribed 不能与 ng-messages 一起使用,而可以与 ng-if 一起使用?