在javascript中访问php变量,反之亦然

在javascript中访问php变量,反之亦然,javascript,php,Javascript,Php,假设我有php页面index.php <?php $x=$_POST[sent] // I get some value in #x ?> <html> <head> <script> function getVar() { var x= <How to fetch $x from php code> alert(x); } </script> </head> <body> <butto

假设我有php页面index.php

<?php
$x=$_POST[sent]  // I get some value in #x
?>
<html>
<head> 
<script>
function getVar()
{
var x= <How to fetch $x from php code>
alert(x);

}
</script>
</head>
<body> 
<button type="submit"> click </buttton>
</body>

</html>

我想在ajax请求中将
id
发送到url.php。我将以
$x
的形式获取它,并希望在JS代码中使用它。

如果您只是想将
$x
变量的值传递给JavaScript,那么可以按如下方式执行:

function getVar()
{
    var x= "<?php echo htmlspecialchars($x); ?>";
    alert(x);    
}
函数getVar() { var x=“”; 警报(x); } 下面是一个工作示例:

<?php
    $x = $_POST['sent']  // I get some value in #x
?>
<html>

<head> 
    <script>
    function getVar()
    {
        var x= "<?php echo htmlspecialchars($x); ?>";
        alert(x);
    }
    </script>
</head>

<body> 
    <button type="submit" onclick="getVar()"> click </buttton>
</body>

</html>

函数getVar()
{
var x=“”;
警报(x);
}
点击

如果脚本正确地接收到
$x
变量,则当您单击该按钮时,它将发出
警报。

如果您只是试图将
$x
变量的值传递给JavaScript,则可以按如下操作:

function getVar()
{
    var x= "<?php echo htmlspecialchars($x); ?>";
    alert(x);    
}
函数getVar() { var x=“”; 警报(x); }
下面是一个工作示例:

<?php
    $x = $_POST['sent']  // I get some value in #x
?>
<html>

<head> 
    <script>
    function getVar()
    {
        var x= "<?php echo htmlspecialchars($x); ?>";
        alert(x);
    }
    </script>
</head>

<body> 
    <button type="submit" onclick="getVar()"> click </buttton>
</body>

</html>

函数getVar()
{
var x=“”;
警报(x);
}
点击

如果脚本正确地接收到
$x
变量,则当您单击按钮时,它将发出
警报。

php到javascript
可以使用

<?php $x = "iam a php variable"; ?>
<script>
        function getVar()
        {
        var x= "<?= $x; ?>";
        alert(x);    //alerts **iam a php variable**(value of $x from php)
        }
</script>

函数getVar()
{
var x=“”;
警报(x);//警报**是一个php变量**(php中的$x值)
}
反之亦然,可以通过Ajax实现。下面是一个简单的例子

<script>
function showUser()
{
var str= "iam a javascript variable";
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    alert(xmlhttp.responseText); //alerts response from php
    }
  }
xmlhttp.open("GET","new.php?q="+str,true); //you can send request through post or get methods 
xmlhttp.send();
}
</script>

函数showUser()
{
var str=“iam是一个javascript变量”;
if(window.XMLHttpRequest)
{//IE7+、Firefox、Chrome、Opera、Safari的代码
xmlhttp=新的XMLHttpRequest();
}
其他的
{//IE6、IE5的代码
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
xmlhttp.onreadystatechange=函数()
{
if(xmlhttp.readyState==4&&xmlhttp.status==200)
{
警报(xmlhttp.responseText);//来自php的警报响应
}
}
open(“GET”、“new.php?q=“+str,true);//您可以通过post或GET方法发送请求
xmlhttp.send();
}
在这里,我使用GET通过ajax在php中获得一个javascript变量。 在new.php中,我只是打印通过GET收到的请求

<?php 
    print $_GET["q"];    //prints **iam a javascript variable**(value of str from   javascript) 
?>

php到javascript
可以使用

<?php $x = "iam a php variable"; ?>
<script>
        function getVar()
        {
        var x= "<?= $x; ?>";
        alert(x);    //alerts **iam a php variable**(value of $x from php)
        }
</script>

函数getVar()
{
var x=“”;
警报(x);//警报**是一个php变量**(php中的$x值)
}
反之亦然,可以通过Ajax实现。下面是一个简单的例子

<script>
function showUser()
{
var str= "iam a javascript variable";
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    alert(xmlhttp.responseText); //alerts response from php
    }
  }
xmlhttp.open("GET","new.php?q="+str,true); //you can send request through post or get methods 
xmlhttp.send();
}
</script>

函数showUser()
{
var str=“iam是一个javascript变量”;
if(window.XMLHttpRequest)
{//IE7+、Firefox、Chrome、Opera、Safari的代码
xmlhttp=新的XMLHttpRequest();
}
其他的
{//IE6、IE5的代码
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
xmlhttp.onreadystatechange=函数()
{
if(xmlhttp.readyState==4&&xmlhttp.status==200)
{
警报(xmlhttp.responseText);//来自php的警报响应
}
}
open(“GET”、“new.php?q=“+str,true);//您可以通过post或GET方法发送请求
xmlhttp.send();
}
在这里,我使用GET通过ajax在php中获得一个javascript变量。 在new.php中,我只是打印通过GET收到的请求

<?php 
    print $_GET["q"];    //prints **iam a javascript variable**(value of str from   javascript) 
?>

PHP和Javascript之间的通信是客户机-服务器通信的经典示例。在本例中,PHP是您的服务器应用程序,Javascript是您的客户端应用程序。有许多为这种通信建立的协议,但您应该了解这些协议和服务


为了理解正在发生的事情,我建议您从PHP程序员的角度阅读本教程。在设计客户机-服务器应用程序时,PHP将通过应用业务逻辑和与数据库通信“生成”所有内容,Javascript将在某些事件(单击、显示表等)上向PHP请求此内容。PHP不输出HTML,而是输出XML或JSON,因此您可以用Javascript解析和显示数据。

PHP和Javascript之间的通信是客户机-服务器通信的经典示例。在本例中,PHP是您的服务器应用程序,Javascript是您的客户端应用程序。有许多为这种通信建立的协议,但您应该了解这些协议和服务

为了理解正在发生的事情,我建议您从PHP程序员的角度阅读本教程。在设计客户机-服务器应用程序时,PHP将通过应用业务逻辑和与数据库通信“生成”所有内容,Javascript将在某些事件(单击、显示表等)上向PHP请求此内容。PHP不输出HTML,而是输出XML或JSON,因此您可以用Javascript解析和显示数据。

两种传输方式:

function getVar($var)
{
var xmlhttp;

    xmlhttp=new XMLHttpRequest();

    xmlhttp.onreadystatechange=function()
      {

      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        $phpVar = xmlhttp.responseText;
            return $phpVar;
        }
      }

    xmlhttp.open("POST","/yourPage.php",true);
    xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlhttp.send("var=" + $var);


}
然后在yourpage.php上:

<?
if (isset($_POST["var"])) {

  die($_POST["var"]);
  }
?>

两种传输方式:

function getVar($var)
{
var xmlhttp;

    xmlhttp=new XMLHttpRequest();

    xmlhttp.onreadystatechange=function()
      {

      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        $phpVar = xmlhttp.responseText;
            return $phpVar;
        }
      }

    xmlhttp.open("POST","/yourPage.php",true);
    xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlhttp.send("var=" + $var);


}
然后在yourpage.php上:

<?
if (isset($_POST["var"])) {

  die($_POST["var"]);
  }
?>


我想他想用ajax。我想他想用ajax。一切都是可能的。请说得更具体些。是否要在每次调用getVar()时用服务器值填充X?在本例中,您需要一个$.ajax。您是否阅读了有关JS和PHP的任何基本内容,客户端/服务器端和一般HTTP通信之间的区别?请查看相关的column@Lame-谢谢,我已经编辑了这个问题。请看一切都是可能的。请说得更具体些。是否要在每次调用getVar()时用服务器值填充X?在本例中,您需要一个$.ajax。您是否阅读了有关JS和PHP的任何基本内容,客户端/服务器端和一般HTTP通信之间的区别?请查看相关的column@Lame-谢谢,我已经编辑了这个问题。请看