Niranjana Neeranj Ответов: 1

Передача массива javascript в PHP с помощью AJAX


Я должен передать переменную массива Javascript в PHP ,

поэтому я не могу передать переменную массива из javascript в php

Итак, ниже приведен код, который я попробовал

Что я уже пробовал:

  <title>CSV File to HTML Table Using AJAX jQuery


    <div class="container">
        <div class="table-wrapper">
            <div class="table-title">
                <div class="row">
                    <div class="col-sm-6">
      <h2>Manage Instances</h2>
     </div>
     <div class="col-sm-6">
        
    </div>
</div>
</div>
    <div align="center">
     Load Data
    </div>
    <br>
    <div id="employee_table">
    </div>
   </div>
  </div>

 

    $( document ).ready(function() {
        $( ".button1" ).click(function() {
            var val = [];
            $("input:checked").each(function (index,value) {
                    val[index] = this.value;
            });

            var myJSONText = JSON.stringify(val);
            $.ajax({
                data: {'kvcArray': myJSONText},
                url: 'Index.php',
                type: 'POST',
                success: function(data) {
                    alert(data);
                }
            });
        });
    });


console.log('Debug Objects: " . json_decode($_POST['kvcArray'], true) . "' );";
        var_dump(json_decode($_POST['kvcArray'], true));
        die();
    }
?>




$(document).ready(function(){
 $('#load_data').click(function(){
  $.ajax({
   url:"FILES/employee.csv",
   dataType:"text",
   success:function(data)
   {
    var employee_data = data.split(/\r?\n|\r/);
    var table_data = ' <table class="table table-striped table-hover"><thead> <tr><th><span class="custom-checkbox"><input type="checkbox" id="selectAll"><label for="selectAll"></label></span></th>';
    table_data += '<tr><th></th>';
    for(var count = 0; count<employee_data.length; count++)
    {
     var cell_data = employee_data[count].split(",");
    //  table_data += '<tr>';
     for(var cell_count=0; cell_count<cell_data.length; cell_count++)
     {
      if(count === 0)
      {
       table_data += '<th>'+cell_data[cell_count]+'</th>';
       if(cell_count == 4){
           table_data += '<th></th><th></th>';
       }
      }
      else
      {
          if(cell_count === 0 ){
            table_data +='<tr><td><span class="custom-checkbox"><input type="checkbox" class="checkbox" id="checkbox"'+count+'" name="options[]" value="'+count+'"><label for="checkbox1"></label></span></td>';
            table_data += '<td>'+cell_data[cell_count]+'</td>';
         }else{
             table_data += '<td>'+cell_data[cell_count]+'</td>';
          }
      }
     }
         table_data += '</tr>';
    }
    table_data += '</table>';
    $('#employee_table').html(table_data);
   }
  });
 });
 
});

1 Ответов

Рейтинг:
2

W∴ Balboos, GHB

Один из способов сделать это-использовать JSON.

Он превращает ваш массив в единственную строку, которая легко передается в AJAX, а на другом конце вы можете преобразовать ее обратно в массив.

Видеть здесь: формат JSON[^], для начала.

JSON очень хорошо зарекомендовал себя и работает с javaScript (ваша клиентская сторона), php (серверная сторона) и даже SQL. Среди прочего.