【问题标题】:How to send data from Javascript to PHP after the page is loaded [duplicate]加载页面后如何将数据从 Javascript 发送到 PHP [重复]
【发布时间】:2020-02-03 11:31:42
【问题描述】:

我当然是 Web 开发的新手。 我已经阅读了大量关于这个问题的文章和答案,但还没有找到解决方案。 我想将一些用户生成的数据存储到数据库中。

我知道 PHP 脚本会在页面加载时加载一次。 我想在页面加载后发送一些从用户那里收集的数据,并将其存储在 javascript 中,然后将数据发送到 PHP。 我知道可以通过定义操作属性或使用请求来通过表单发送数据。 但我并不完全了解如何通过请求发送和接收数据。

我尝试将数据发送到页面本身

$.ajax({
            type:"POST",
            cache:false,
            url:"localhost/quiz/index.php",
            data:{
                name : userName,
                email : userEmail,
                website : siteURL,
                noLeads : leads,
                content : regularContent,
                seo : seoBefore,
                paidAds : otherPaidAds,
                socialMedia : socialMediaAds,
                emarketingExpenditure : expenditureMarketing,
                agency : marketingAgency,
                growth : businessGrowth
            },
            success: function () {
                alert("Data sent "+"<?php echo $_POST['name']; ?>");
                window.location.href = "dataController.php";
            }
            });

但是,PHP 脚本仅在页面加载时加载一次。因此,当我尝试触发警报时,它要么说 POST 变量未定义,要么它采用我在变量声明期间在页面开头设置的值。

如果我将请求发送到另一个文件:

$.ajax({
            type:"POST",
            cache:false,
            url:"localhost/quiz/index.php",
            data:{
                name : userName,
                email : userEmail,
                website : siteURL,
                noLeads : leads,
                content : regularContent,
                seo : seoBefore,
                paidAds : otherPaidAds,
                socialMedia : socialMediaAds,
                emarketingExpenditure : expenditureMarketing,
                agency : marketingAgency,
                growth : businessGrowth
            },
            success: function () {
                alert("Data sent "+"<?php echo $_POST['name']; ?>");
                window.location.href = "dataController.php";
            }
            });

但是我不知道如何使用这些数据。我接受了输入并将选项卡重定向到第二页,在第二页上我尝试打印/警告从第一页发送的 POST['name'] 变量,但它说变量未定义。

那么在不同或相同文件之间的服务器上发送和接收数据是如何工作的呢?如何以及何时可以使用这些数据?

【问题讨论】:

  • 我建议在较小的测试脚本中尝试使用 ajax。首先要学习绳索。然后根据这些见解在您的项目中进行测试。

标签: javascript php ajax http-post


【解决方案1】:

您会将数据从 js 发送到 php,以便写入数据库或使用数据来比较/(查询)从数据库中选择。

除了这两个,你应该直接在你的 html 中使用那些 js 变量。

其次是php函数

$_POST['name'] 

将在您的 localhost/quiz/index.php 中可用,而 NOT 在调用 js 所在的同一文件中!

请自行刷新(通过学习资料)服务器端和客户端。

客户端代码将数据发送到服务器端以执行您的首选操作。您不能让 php 在客户端做事(内容交付除外)。

另外,你也不需要尝试从js向php发送数据,通过某种方法将php数据发送到js。

【讨论】:

  • 是的,我想将所有数据存储到数据库中,我正在使用 javascript 库,数据存储在我在 ajax 请求中发送的变量中。但是,如果我什至在 PHP 中都没有这些数据,我该如何将它存储到数据库中呢?
猜你喜欢
  • 1970-01-01
  • 2020-06-14
  • 1970-01-01
  • 1970-01-01
  • 2021-07-15
  • 1970-01-01
  • 2020-05-10
  • 1970-01-01
  • 2013-03-27
相关资源
最近更新 更多