【问题标题】:Pass javascript variable to php code? [duplicate]将javascript变量传递给php代码? [复制]
【发布时间】:2012-03-08 19:28:05
【问题描述】:

可能重复:
How to pass a variable / data from javascript to php and vice versa?

我有一个 php 和 javascript 代码文件。我想将 php 变量设置为 javascript 函数的结果,该函数将 php 变量作为参数。例如:

$parameter = "this is a php variable";
$phpVar = echo "foo(" . parameter . ");";

我知道你不能做“= echo”,还有其他方法可以做到吗?

谢谢

【问题讨论】:

  • 使用 ajax 或使用表单发送......也取决于你的情况,你想要做什么......

标签: php javascript


【解决方案1】:

您不能直接这样做,因为 JavaScript 在客户端运行,而 PHP 在服务器端执行。

您需要先执行 JavaScript,然后通过 FORM 或 AJAX 调用将结果发送到服务器。

这可能是这样的:

PHP

$parameter = "this is a php variable";
echo "var myval = foo(" . parameter . ");";

JavaScript

var myval = foo("this is a php variable"); // generated by PHP

$.ajax({
  type: 'POST',
  url: 'yourphpfile.php',
  data: {'variable': myval},
});

接收 PHP (yourphpfile.php)

$myval = $_POST['variable'];
// do something

【讨论】:

  • 接收PHP代码是yourphpfile.php指定的文件。它可以是单独的,也可以是原始 PHP 文件中 if 块的一部分。
  • 口才好,容易做。
  • 多变量怎么办?
【解决方案2】:

PHP 代码在发送响应之前在服务器上运行; JavaScript 之后在浏览器中运行。您不能从 JavaScript 设置 PHP 变量,因为浏览器中没有 PHP 变量,如果运行的是 JavaScript。您必须使用从 JavaScript 到 PHP 脚本的 AJAX 请求,该脚本存储您想要获取的任何信息。

【讨论】:

  • 无论谁投了反对票,解释一下你认为反感的内容会更有用,尤其是在我之后回答的每个人似乎都在说我所做的同样的事情。我弄错了一些重要的细微差别吗?你只是不喜欢以优质绞肉命名的人吗?
【解决方案3】:

试试这个:

var a = "Result: "+ <?php echo json_encode($parameter); ?>;

【讨论】:

    【解决方案4】:

    您必须从 JavaScript 向脚本发出 GETPOST 请求。

    【讨论】:

      【解决方案5】:

      您不能将 js 变量传递给 php 代码
      PHP恰好在服务器上运行,距离运行js的客户端一千英里。

      所以,你只能调用 php 脚本,使用 js 或常规超链接。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-01-09
        • 1970-01-01
        • 2014-01-11
        • 2018-03-05
        • 2016-02-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多