【问题标题】:Getting Null Values on AJAX post in PHP在 PHP 中获取 AJAX 帖子的空值
【发布时间】:2017-01-17 06:37:25
【问题描述】:

我尝试了很多次来调试这段代码,但它似乎根本不起作用。我在我的应用程序上使用选择的 jquery。

这是我的代码:

 $(document).ready(function(){

 var status = [];
 var method = $(this).attr('data-method');

 var config = {
   '.chosen-select'           : {},
   '.chosen-select-deselect'  : {allow_single_deselect:true},
   '.chosen-select-no-single' : {disable_search_threshold:10},
   '.chosen-select-no-results': {no_results_text:'Oops, nothing found!'},
   '.chosen-select-width'     : {width:"95%"}
 }
 for (var selector in config) {
   $(selector).chosen(config[selector]);
 }
     $("#test").chosen().change(function(e, params){

   console.clear()

   $("#test :selected").each(function(i,selected)
   {

          status[i] = $.trim($(selected).text());
   })

 console.log(status);    
 var new_var = JSON.stringify(status);

   $.ajax({
             type: "POST",
             url: "<?php echo site_url('request/result') ?>",
             data: { data: new_var }
         }).done(function(data) {
             alert( "Data Send:");
         }).fail(function() {
             alert( "Data Not Sent" );
         });
         e.preventDefault();

  });    });

new_var 保存数组值,但我无法将其值发布到我的控制器。

控制器:request.php

  public function result(){
     echo json_encode($status);      
     die(); 
  }

我在 Firefox 上的网络选项卡上对其进行调试,我可以在参数上看到值,但在响应选项卡上它返回 NULL 我似乎无法解决这个问题将近一周。我不知道如何解决它,因为我是 AJAX 新手

【问题讨论】:

  • 你还尝试了什么:比如echo json_encode($_POST['data']);
  • 您的问题缺乏细节,这将有很大帮助。您的问题需要明确解释您的问题是什么以及您期望 Ajax 返回什么。但是,请查看 PHP 中的结果函数。您正在尝试访问不在函数范围内的变量,因此您实际上没有传递 JSON_Encode 数据。这将导致 json_encode 不返回任何数据。这可能是您的问题,但是没有更多信息,很难说。

标签: javascript php jquery ajax jquery-chosen


【解决方案1】:

你需要从 $_POST 数组中读取:

  public function result(){
    // Your variable is here:
    var_dump($_POST['data']);
    // echo json_encode($_POST['data']);      
    die(); 
 }

请记得清理 $_POST,例如。 G。使用filter_input

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-05
    • 2015-01-05
    • 1970-01-01
    • 2018-04-25
    • 1970-01-01
    • 2019-08-12
    • 1970-01-01
    相关资源
    最近更新 更多