【问题标题】:How to get JavaScript variable through PHP post request?如何通过 PHP 发布请求获取 JavaScript 变量?
【发布时间】:2020-06-17 15:07:03
【问题描述】:

我正在通过 jquery ajax 发布 PHP 文件 (post.php)。我想以 javascript 变量的形式从中获取数据。我成功地在我的控制台中获取了数据。但我不知道如何使用这个变量。你可以在下面看到我的代码。

$.post(
    "post.php",
    {
      region: region,
      district: district
    },
    function(data) {
      console.log(data);
    }
  );

我的 post.php 页面是这样的

    @include('../../_partials/_dbConnect.php');
    $region = $_POST['region'];
    $district = $_POST['district'];
    $sql = "SELECT * FROM table1 WHERE name_rg= '".$region."'";
    $result = pg_query($db_connection, $sql);
        while ($row = pg_fetch_row($result)) {
            $cols = array($row[0],$row[1],$row[2],$row[3],$row[4],$row[5],$row[6],$row[7],$row[8],$row[9],$row[10],$row[11],$row[12],$row[13],$row[14],$row[15],$row[16],$row[17],$row[18],$row[19],$row[20],$row[21]);
        }
<script>
  var cols = [<?php echo '"'.implode('","', $cols).'"' ?>];
</script>

还有像这样的console.log(data) 输出,

<script>
  var cols = ["94","32","361","0","118","159","0","243","702","1775","8","0","2","0","150","135","381","2","0","0","0","0"];
</script>

我们非常感谢您的帮助。

【问题讨论】:

  • 你的意思是要访问cols中的数据吗?
  • 我的意思是,我想将 cols 用作 javascript 变量。里面function(data) {var cols=$getThisColsValueFromPhpPost}

标签: javascript php ajax post


【解决方案1】:

在您的post.php 中,您可以简单地回显数组,jQuery 会自动将其转换为array 作为响应

// post.php
<?php
    @include('../../_partials/_dbConnect.php');
    $region = $_POST['region'];
    $district = $_POST['district'];
    $sql = "SELECT * FROM table1 WHERE name_rg= '".$region."'";
    $result = pg_query($db_connection, $sql);

    while ($row = pg_fetch_row($result)) {
        $cols = array($row[0],$row[1],$row[2],$row[3],$row[4],$row[5],$row[6],$row[7],$row[8],$row[9],$row[10],$row[11],$row[12],$row[13],$row[14],$row[15],$row[16],$row[17],$row[18],$row[19],$row[20],$row[21]);
    }

    echo json_encode($cols);
?>

// Somewhere in your js
$.post(
    "post.php",
    {
      region: region,
      district: district
    },
    function(data) {
      console.log(data[0]);
    }
);

【讨论】:

  • 它给出了字符串中的值,如何将字符串更改为数字?
  • 谢谢,我得到了解决方案,我需要写console.log(parseJSON(data)) instate of console.log(data)
【解决方案2】:

在javascript中使用JSON.parse()

$.post(
    "post.php",
    {
      region: region,
      district: district
    },
    function(data) {
      data=JSON.parse(data);
    }
);```

And here you go, u can play with it as you need
Happy learning!

【讨论】:

    猜你喜欢
    • 2022-01-04
    • 1970-01-01
    • 2017-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多