如何将JS变量传递给PHP变量

如何将JS变量传递给PHP变量,php,ajax,variables,Php,Ajax,Variables,我正在开发一个web应用程序,该应用程序目前提供MySql数据库中的文档列表。列表中的每个文档都有一个onclick事件,假设该事件将打开特定文档,但我无法执行此操作 我的列表是使用Ajax发布的。以下是代码摘录(JS): } 最后,openfile onclick事件触发以下php代码以查找要下载的文件(php): 这段代码在下载文件时运行良好。如果省略Sql查询的WHERE部分,onclick事件将下载第一个文件。不知何故,我需要获取screenRef元素文本并将其更改为php文件可以读取的

我正在开发一个web应用程序,该应用程序目前提供MySql数据库中的文档列表。列表中的每个文档都有一个onclick事件,假设该事件将打开特定文档,但我无法执行此操作

我的列表是使用Ajax发布的。以下是代码摘录(JS):

}

最后,openfile onclick事件触发以下php代码以查找要下载的文件(php):

这段代码在下载文件时运行良好。如果省略Sql查询的WHERE部分,onclick事件将下载第一个文件。不知何故,我需要获取screenRef元素文本并将其更改为php文件可以读取的变量。有人知道怎么做吗?而且,没有任何页面刷新

我真的很感谢大家的反馈,并提前感谢你们


DFM

您不能从服务器端(php)代码中引用客户端(js)变量


您需要将要在post中显示的文档ID包含在查询字符串中或返回的表单值中,从而将其传递回服务器。

感谢您的输入-是否可以使用Ajax执行此操作,例如,将xmlHTTP.responseText转换为变量或其他特定于Ajax的标准?我认为您的想法是错误的。AJAX仍然在客户端上运行。无论您发送什么,都是通过Querystring发送到服务器(PHP代码),然后处理PHP代码并返回一个普通的html页面。只需通过ajax post请求发送您想要的任何内容,我建议您使用dojo或jQuery之类的框架来实现这一点。
function stateChanged()
  {
if (xmlhttp.readyState==4)
  {
  //All documents//
  document.getElementById("screenRef").innerHTML="<font id='maintxt'; name='title'; onclick='fileopen()'; color='#666666';>" + xmlhttp.responseText + "</font>"; 
   }
  }
 }
function stateChanged()
 {
if (xmlhttp.readyState==4)
 {
  //Open file
  var elemIF = document.createElement("iframe"); 
  elemIF.src = url; 
  elemIF.style.display = "none"; 
  document.body.appendChild(elemIF);  
 }
}
$con = mysql_connect("localhost", "root", "password");
 if (!$con)
   {
     die('Could not connect: ' . mysql_error());
   }
 mysql_select_db("Documents", $con);    
 $query = mysql_query("SELECT name, type, size, content FROM upload WHERE name = NEED JS VARIABLE HERE");
 $row = mysql_fetch_array($query);   
 header ("Content-type: ". $row['type']);
 header ("Content-length: ". $row['size']);
 header ("Content-Disposition: attachement; filename=". $row['name']);
 echo $row['content'];