doubi7346 2014-02-20 13:29
浏览 39
已采纳

Ajax将Json传递给PHP

I have looked at a few post but cant seem to work out what I've done incorrect, i need to work with the JSON to inport into database but it saying my posted cities is not coming through?

Javascript

     console.log(jsonData);
      $.ajax({
          url: "ajax.php",
          type: "post",
          data: jsonData,
      datatype: 'json',
          success: function(jsonData){  

               $('#result').html(jsonData);

          },
          error:function(){
              alert('ajax failed');    
          }   
        }); 
}

Ajax.php

$obj = json_decode($_POST['cities']);

print_r($obj);

Error :

Notice: Undefined index: cities in ajax.php on line 3

Console Log for Json

{"currentCity":"Exeter","cities":[{"name":"Exeter","offers":[{"offer":"test","price":"11","notes":"100","city":"Exeter"}]}]}

  • 写回答

1条回答 默认 最新

  • dongyao2022 2014-02-20 13:34
    关注

    Well firstly, datatype needs to be dataType. Note that this follows the lower camel case nomenclature.

    Secondly, $_POST['cities']; will not work because it is the key in a JSON object and not a key to a post identifier. What you need to do is pass it along like, data: {'json' : jsonData}, then you can do:

     $obj = json_decode($_POST['json']);
     print_r($obj['cities']);
    

    edit

    So your ajax call will look like below:

    $.ajax({
         url: "ajax.php",
         type: "post",
         data: {
             "json" : jsonData
         },
         dataType: 'json',
         success: function(jsonData){  
              $('#result').html(jsonData);
         },
         error:function(){
             alert('ajax failed');    
         }   
    }); 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭