Как передать массив с помощью AJAX - PullRequest
0 голосов
/ 09 июня 2018

Я пытаюсь передать массив с ajax с сообщением на страницу php.

Мой код js:

 function funzione5(){ 
     var aux2=document.getElementById('f1').value; 

$.ajax({type: "POST",
            url: "AddMeeting.php", 
                data: {
                    'aux':aux,
                    'aux2':aux2,
                    'k':k

                }, 
                    success: {function(data){
                        console.log(data);
                    }

                                 },
        error: {function(){alert("Error");}} 
            }); 
 $('#modalMeeting').modal('hide');
 }

, а страница php:

<?php
 if(strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest')
 {
   header("Location: Meetings.php");
   exit();
 }

 if(!isset($_COOKIE["id"]))
 {
   $json_data = array(
'draw'            => 0,
'recordsTotal'    => 0,
'recordsFiltered' => 0,
'data'            => [],
'error'           => 'Laravel Error Handler',
          );
                  $json = json_encode($json_data);
             echo $json;
        exit();
 }   



 include("DB.php"); //dati configurazione del database



$cont = mysqli_real_escape_string($connessione, $_POST["k"]);
                  $title = mysqli_real_escape_string($connessione, 
 $_POST["aux[0]"]);
             $date = mysqli_real_escape_string($connessione, 
$_POST["aux[1]"]);
        $place = mysqli_real_escape_string($connessione, $_POST["aux[2]"]);
   $topic = mysqli_real_escape_string($connessione, $_POST["aux[3]"]);
     $lat = mysqli_real_escape_string($connessione, $_POST["aux[4]"]);
   $lng = mysqli_real_escape_string($connessione, $_POST["aux[5]"]);

for($i=6;$i<$cont;$i++) 
 {  $part_id+$i = mysqli_real_escape_string($connessione, 
$_POST["aux[".$i."]"]);  }

     $card_id = mysqli_real_escape_string($connessione, $_POST["aux2"]);
$id2=$_COOKIE['id'];
     echo mysqli_error($connessione);


      $sql1=mysqli_query($connessione,"insert into meeting 
 (card_id,user_id,title,place,date,topic,lat,lng) values 
 ('$card_id','$id2','$title','$place','$date','$topic','$lat','$lng');");



   echo mysqli_error($connessione);
   $json_data = array(

                                "result" => 1
                         );
$json = json_encode($json_data);
echo $json;



 ?>

Правильно ли передавать массив таким образом?Я проверил, что в функции «funzione5» значения массива установлены правильно.В чем может быть проблема?Можете ли вы объяснить мне, как передать массив?Я искал в Интернете, но ничего не нашел.

1 Ответ

0 голосов
/ 10 июня 2018

В настоящее время ваши параметры передаются как «aux» и «aux2», а не «aux [0]», как вы установили в PHP.Если это простой массив, я предлагаю просто использовать разделитель, поэтому разделите входные данные любым символом, а затем разбейте его на части, похоже, что это действительно можно сделать в вашем примере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...