使用javascript变量设置PHP变量

18 浏览
0 Comments

使用javascript变量设置PHP变量

可能是重复问题:

如何从 PHP 获取变量到 JavaScript

如何从 PHP 访问 JavaScript 变量

我目前有这一行代码:

displaystatus('CALLER IS: '+inCallingNum);

它用于在页面上显示一条消息,比如 CALLER IS: 01234 567890。

现在我需要将 inCallingNum 变量的值设置为 PHP 变量 $user_number。这可行吗?

我尝试了类似这样的代码,但没有成功:

 = inCallingNum;

谢谢任何帮助。

编辑:

这是设置 inCallingNum 变量的地方:

inCallingNum = inCallingNum.slice(inCallingNum.lastIndexOf(",")+1, inCallingNum.length);

编辑 2:

我尝试更清楚地解释我想要做的事情。我目前有两个页面,一个主页面显示所有信息,第二个页面查询数据库并提取用户个人资料。当 JavaScript 变量 inCallingNum 更改时,我需要将其发送到 user_data.php 页面,并更新信息以显示新人的个人资料。

0
0 Comments

由于JS是在Apache处理PHP页面之后运行的,所以这是不可能的。

解决方法:

要从JavaScript变量设置PHP变量,可以通过AJAX(Asynchronous JavaScript and XML,异步JavaScript和XML)来实现。AJAX允许在不刷新整个页面的情况下与服务器进行数据交互。

以下是一个示例代码,演示如何使用JavaScript变量设置PHP变量:










在上述示例中,我们使用jQuery库来简化AJAX请求的编写。在`$.ajax`函数中,我们指定了要发送请求到的PHP页面的URL,请求的类型为POST,然后通过`data`属性将要设置的PHP变量及其值传递给服务器。

然后,在PHP页面中,我们可以通过`$_POST`超全局变量来接收发送过来的数据,并将其中的值赋给PHP变量。以下是set_variable.php的示例代码:


在上述示例中,我们通过`$_POST['variable']`获取了发送过来的数据,并将其赋给了名为`$variable`的PHP变量。然后,我们通过`echo`语句返回响应,将PHP变量的值发送回JavaScript。

通过以上方法,我们可以实现使用JavaScript变量来设置PHP变量。请注意,由于AJAX是异步的,所以在接收到响应之前,JavaScript代码将继续执行。因此,如果需要在JavaScript代码中使用设置后的PHP变量,应该将相关逻辑放在`success`回调函数中。

0
0 Comments

使用JavaScript变量设置PHP变量的问题出现的原因是,PHP是服务器端代码,JavaScript是客户端代码。无法直接在JavaScript中设置PHP变量,因为JavaScript在与服务器交互之前已经获取了服务器的响应,所以只能操作服务器端动作的结果,无法改变结果的源代码。

解决方法是通过与服务器进行通信,将JavaScript中的数据传递给服务器端,然后在服务器端使用这些数据来设置PHP变量。可以通过以下步骤实现:

1. 在JavaScript中获取需要传递给服务器的数据,可以使用JavaScript变量来存储这些数据。

2. 使用AJAX或Fetch API等技术,将JavaScript中的数据发送到服务器端。

3. 在服务器端接收到JavaScript发送的数据后,使用PHP代码来处理这些数据,并将其设置为PHP变量的值。

4. 在服务器端完成PHP变量的设置后,可以根据需要返回响应给客户端。

这样,就实现了使用JavaScript变量设置PHP变量的目的。通过与服务器的交互,可以在客户端和服务器端之间传递数据,并在服务器端进行处理和操作。这种方式可以实现动态的数据交互和更新,提高了网页的交互性和实时性。

0
0 Comments

使用javascript变量来设置PHP变量的问题的原因是因为PHP和javascript是两种不同的编程语言,它们在运行时是分开的。因此,不能直接在PHP代码中使用javascript变量。

要解决这个问题,可以使用AJAX来实现PHP和javascript之间的通信。具体步骤如下:

1. 在javascript中获取用户输入的值,并将其存储在一个变量中:

var inCallingNum = document.getElementById("inputField").value;

2. 使用AJAX将这个变量发送到PHP脚本:

var xhr = new XMLHttpRequest();
xhr.open("POST", "your_php_script.php", true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {
  if (xhr.readyState === 4 && xhr.status === 200) {
    console.log(xhr.responseText);
  }
};
xhr.send("inCallingNum=" + inCallingNum);

3. 在PHP脚本中接收这个变量,并将其设置为PHP变量:

$user_number = $_POST["inCallingNum"];

通过这种方式,我们可以通过javascript变量来设置PHP变量,并在后台进行处理。这种方法可以实现PHP和javascript之间的双向通信,使我们能够在前端和后端之间传递数据。

0