繁体   English   中英

将数组从 Javascript 传递给 PHP

[英]Passing Array to PHP from Javascript

我正在尝试将我的 JS 数组传递给 PHP 数组,而我在这里找到的所有解决方案都是无用的,或者我可以将这些解决方案整合到我的问题中。

Javascript

$('#siparisButon').click(function(){
                 var splitListe = $('#siparis-block span').text();
                 splitListe = splitListe.split("- ");
                 splitListe = JSON.stringify(splitListe);
                 $.post("menu.php",{'siparisListe[]': splitListe});
                 // I have a div that shows the result of PHP function and it says undefined index.
                 $('#fonksiyon').show();
          })

PHP

function ekleme(){
          if($_POST['siparisListe']){
                 $liste = $_POST['siparisListe'];
                 echo $liste;
          }
   }

而不是这个

$('#siparisButon').click(function(){
     var splitListe = $('#siparis-block span').text();
     splitListe = splitListe.split("- ");
     splitListe = JSON.stringify(splitListe);
     $.post("menu.php",{'siparisListe[]': splitListe});
     // I have a div that shows the result of PHP function and it says undefined index.
     $('#fonksiyon').show();
})

将您的代码修改为此

$('#siparisButon').click(function(){
     var splitListe = $('#siparis-block span').text();
     splitListe = splitListe.split("- ");

     var input_data = new FormData();
     $.each(splitListe,function(index,value){
         input_data.append("siparisListe["+index+"]",value)
     });
     $.ajax({
        url: "menu.php",
        data: input_data,
        type: "POST",
          success: function(data) {
            $("#passwordMatch").html(data);
        },
        error: function(data) {}
     })

     // I have a div that shows the result of PHP function and it says undefined index.
     $('#fonksiyon').show();
})

POST字段名称中删除[]并将其传递给一个数组(jQuery 将为您编码JSON )。

$('#siparisButon').click(function() {
     let splitListe = ($('#siparis-block span').text() || '').split('- ');

     if (splitListe) {
         $.post("menu.php", { siparisListe: splitListe });

         $('#fonksiyon').show();
     }
});

然后在您的 PHP 中进行验证:

function ekleme() {
    if ($liste = $_POST['siparisListe']) {
         var_dump($liste);
    }

    echo 'No $liste array in POST.';
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM