在PHP中获取AJAX上的Null值

时间:2017-01-17 06:37:25

标签: javascript php jquery ajax jquery-chosen

我尝试了很多次来调试这段代码,但它似乎根本不起作用。我在我的应用程序中使用了选择的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上调试它我可以看到params上的值但是在响应选项卡上它返回 NULL 我似乎无法解决问题将近一周。我没有任何想法如何解决它,因为我是AJAX的新手

1 个答案:

答案 0 :(得分:2)

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

(<p.*<img.*?)class=".*?"(.*?/p>)

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