首页 > 解决方案 > 将特定解码的 JSON 值从响应发送到 php

问题描述

在寻找其他用户问题的答案/方法几个小时后,我又提出了另一个问题。

所以这里快速详细信息:

  1. 1.php 使用 AJAX 将输入字段值发送到 2.php
  2. 2.php 通过 $_POST 获取值并使用它向其他服务器 API 发送请求
  3. 我得到 JSON 响应,在 2.php 中解码并回显它们
  4. 1.php 从 2.php 的 div 内解码的 JSON 响应中得到结果
  5. 通过使用 div 内的按钮,我使用从 2.php 获得的值填充/填充 1.php 中的一些输入字段

问题是我一直在获取特定的解码 JSON 值,比如我想要 $decodedname 或 $decoded['response']['name']。现在我得到了来自 2.php 的所有响应

1.php

<div>
  <label class="col-form-label"><b>Card Number</b></label><br>                                       
  <input class="form-control" type="text" id="card" name="card">
</div>

<button type="submit" class="btn btn-primary mb-3" onclick="return 
  checkcard()">Check
</button>

<div id="msg">
</div>

<label class="col-form-label"><b>NICK</b></label><br>                                           

<input class="form-control" type="text" id="nick" name="nick">

<label class="col-form-label"><b>NAME</b></label><br>                                           

<input class="form-control" type="text" id="name" name="name">

<button type="button" class="btn btn-primary" onclick="return autoFill()">

<script type="text/javascript">     
    var global_data = '';

    function checkcard()
    {
        var name = $('#card').val();
        var dataString ='card='+ name;                                   
        $.ajax({                                     
            type:"POST",
            url:"../loader/2.php",                               
            data:dataString,                                     
            cache:false,
            success: function(data){
                global_data = data;
                var getname = data.name; ----- i've also tried to set var getname = data.encode
                $('#msg').html(data);
           }
        }) 
        return false;   
    }                   

    function autoFill() {                                                        
        $('#nick').val(global_data);
        $('#name').val(getname);
        return false;
    }    
</script>

2.php

$name = $decodedjson['response']['name'];
$encode = array('name' => $name);
echo json_encode($encode); <--- u want to get this specific value, not all the decoded json below this
---echoed other decoded response---

标签: phpjsonajax

解决方案


推荐阅读