将JavaScript数组传递给PHP

将JavaScript数组传递给PHP,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我在php文件中有这样一个列表: <ul id="alist"> <li>Item1</li> <li>Item2</li> <li>Item3</li> </ul> 在阅读了几篇关于使用json、ajax的文章后,我尝试了这一点,但没有成功。在我的js文件中: $.ajax({ type: "POST", url: "checklist.php", data:

我在php文件中有这样一个列表:

<ul id="alist">
  <li>Item1</li>
  <li>Item2</li>
  <li>Item3</li>
</ul>
在阅读了几篇关于使用json、ajax的文章后,我尝试了这一点,但没有成功。在我的js文件中:

$.ajax({
    type: "POST",
    url: "checklist.php",
    data: { kvcArray : array},
    success: function() {
        alert("Success");
    }
});
在我的PHP文件中:

<?php
  $myArray = $_POST['kvcArray'];
  var_dump($myArray)
?>


我得到了一个“null”的结果,非常感谢您的帮助。

我在


宽度=屏幕宽度;
高度=屏幕高度;
如果(宽度>0和高度>0){
window.location.href=”http://localhost/main.php?width=“+width+”&height=“+height;
}否则
退出();
php


不确定我是否误解了这个问题,但这在我的计算机上运行良好(它记录了您的阵列数据):

---index.php---


  • 项目1
  • 项目2
  • 项目3
var数组=[]; $(“#alis li”)。每个(函数(){ array.push($(this.text()) }); $.ajax({ 类型:“POST”, url:“checklist.php”, 数据:{kvcArray:array}, 成功:功能(数据){ 控制台日志(数据); } });
---checklist.php---


直接的方法是将数组的值附加到表单中的隐藏输入字段

  • 使用jquery获取列表值并推送到数组
  • 将数组转换为字符串,以便提交表单
  • 向具有id和空值属性的窗体添加隐藏输入
  • 将字符串附加到此输入字段
  • 在提交文章时,在PHP上,您将能够看到字符串形式的数组
  • 在php端和presto上转换回数组
    欢迎您

    您是否尝试回显已发布的数据?可能重复的回显仍返回Null是您的
    成功
    回调调用
    警报
    ?是的,它表示成功。因此此问题在堆栈溢出上有多个类似的帖子,包括这篇针对Javascript帖子选项的帖子,它返回给我“Array()”如果我尝试使用var_dump,它会给出数组(0){}。我真的很困惑为什么我和其他人不一样。。。
    <?php
      $myArray = $_POST['kvcArray'];
      var_dump($myArray)
    ?>
    
    <script type="text/javascript">
    
    width = screen.width;
    height = screen.height;
    
    if (width > 0 && height >0) {
        window.location.href = "http://localhost/main.php?width=" + width + "&height=" + height;
    } else 
        exit();
    
    </script>
    
    <?php
    echo "<h1>Screen Resolution:</h1>";
    echo "Width  : ".$_GET['width']."<br>";
    echo "Height : ".$_GET['height']."<br>";
    ?>
    
    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="utf-8">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
      </head>
      <body>
    
        <!-- Your list -->
        <ul id="alist">
          <li>Item1</li>
          <li>Item2</li>
          <li>Item3</li>
        </ul>
    
        <!-- Your JS -->
        <script>
        var array = [];
        $("#alist li").each(function() {
            array.push($(this).text())
        });
    
        $.ajax({
            type: "POST",
            url: "checklist.php",
            data: { kvcArray : array},
            success: function(data) {
              console.log(data);
            }
        });
        </script>
    
      </body>
    </html>
    
    <?php print_r($_POST); ?>