从Javascript获取变量值到PHP

时间:2013-03-18 07:22:45

标签: php javascript

如果我有这样的javascript:

<javascript>
function myvalue()
{
    var a = 3;
}
</javascript>

如何从函数中获取变量a的值。所以,我可以在php代码中执行操作,如下所示:

<?php 
$b = 1; 
$c = $b + a (variabel a from the function);
echo $c; // return 3
?>

非常感谢

4 个答案:

答案 0 :(得分:5)

你可以用两种方式做到这一点。

  1. 将此值分配给隐藏的输入字段并将其发布到该PHP页面。
  2. 使用AJAX发送到PHP页面。

答案 1 :(得分:3)

以下是通过AJAX

执行此操作的方法

第1步 从这里获取jQuery库:https://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js

第2步 html页面:

<html>
<head></head>
<body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
<script>
function myvalue() {
   var a = 3;
$.ajax({
  url: 'ajax_example.php'
  cache: false,
  type: 'GET',
  data: {var: a},
  dataType: 'JSON',
  beforeSend: function() { alert("About to deploy ajax request");
  success: function(response)
  {     
        console.log(response);
         if(response.success) {
               alert(response.var); 
         } else {
            alert(response.message); 
         }
  }
});
 $(document.ready(function() {
    myvalue();
 });
<script>

</body>
</html>

第3步 PHP页面ajax_example.php

<?php
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
header('Content-Type: application/json; charset=utf-8');
$var = isset($_GET['var']) ? $_GET['var'] : FALSE;

if($var) 
{
   $var = htmlspecialchars($var, ENT_QUOTES, 'UTF-8');

   echo json_encode(array("success" => true, "var" => $var, "message" => "Example message"));
} else {

  echo json_encode(array("success" => false, "message" => "You need to provide a value"));
}

答案 2 :(得分:0)

您应该将JS variable valueAJAX来电发送到PHP页面。 这就是这个过程的运作方式。

答案 3 :(得分:0)

你必须使用AJAX。

php在服务器中运行,javascript在cleint浏览器中运行。

第一个代码在服务器中运行然后它来到浏览器,所以你不能直接将js变量传递给php。你必须使用AJAX创建一个http请求传递给服务器。

ref:http://api.jquery.com/jQuery.ajax/用于jquery ajax实现。