php - 将 jquery 变量传递给 php

标签 php jquery variables

我有以下 jquery 代码:

  while (count < 31) {
  window['cday_' + count] = <?php echo $day_1 ?>; 
  window['tday_' + count] = (window['cday_' + count] * formfig) / formfig2; 
  count++;
  }

但是我需要在 php echo 语句中使用 $day_1 来反射(reflect)变量“count”,所以理论上它应该类似于“echo $day_count”。是否可以将 var 传递给 php?


php 和 jquery 编码:

$i=0;
while ($i < $num) {
${"day_$i"}=mysql_result($result,$i,"datavalue");
$i++;
}

?>

<script type="text/javascript">
var chart1; 
var count=1;
var formfig=17;
var formfig2=2;

function chartdraw(){

      while (count < 31) {
      window['cday_' + count] = <?php echo $day_1 ?>; 
      window['tday_' + count] = (window['cday_' + count] * formfig) / formfig2; 
      count++;
      }

最佳答案

简单的回答是否定的。

要了解可能性,您需要深入了解正在发生的事情。您的 PHP 代码正在构建一个 HTML 文档(带有嵌入的 JavaScript)并将其发送到 Web 浏览器。一旦 Web 浏览器(当然是在用户的计算机上运行,​​而不是您的服务器上运行)呈现该页面,它将执行 javascript。这时 JavaScript 变量开始真正意味着一些东西。在那之前,它们只是通过网络发送的文本。这一点是在 PHP 代码运行完毕很久之后。您的服务器在将代码发送给用户时已经关闭了该 php 实例。

记住这一点,您可以通过称为 ajax 请求的方式将 javascript 变量的值(或任意数量的其他内容)发送回服务器。本质上,这会将一些信息(变量的值和您想要的页面的名称)发送回您的服务器,这反过来会导致您的服务器构建一个新的网页,该网页可以具有PHP代码在里面。该网页的内容将返回到您可以提供的另一段 javascript(称为“回调”),它可以获取由第二个 php 脚本创建的页面并使用它。当然,这是相当资源密集型的。

除非您打算做一些只有 PHP 可以做的事情,否则我建议您找到一种方法来尽可能多地在 JavaScript 中执行逻辑。这缓解了所有这些复杂的问题,并将所有艰苦的工作保留在用户的机器上。

如果您可以构建您的代码,以便您的 php 代码在 php 完成运行之前提供 javascript 代码所需的所有数据,那么您无需对 ajax 进行任何花哨的操作即可摆脱困境。这是一个例子:

<script type="text/javascript">
  var days = {};
  <? for($day = 0; $day < 30; $day++) { ?>
    days.<? echo $day ?> = "<? echo get_day_info($day) ?>";
  <? } ?>
</script>

这将创建一个名为 days 的 javascript 对象。然后它将填充 days.i,其中 i 从 0 到 30。它假设您有一个名为 get_day_info($day) 的函数,该函数需要一天并返回当天的信息。我在这里假设您正在处理字符串 - 如果不是,您将需要删除引号,并且可能需要执行其他操作来包装数据,具体取决于数据采用的格式。

关于php - 将 jquery 变量传递给 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4989956/

相关文章:

php - 如何使用 PHP 和 MySQL 中的表单更新行位置?

php - Genesis Framework - 如何更改自定义 header css 代码?

javascript - 计算机上的字体列表

javascript - 使用带有 Prev 和 Next 图标的 Jquery 滚动到下一个 Div

javascript - 在回调中保留变量范围

php - 基于内存的数据库可以取代对缓存的需求吗?

php - 带有 "WHERE"问题的小型 php fetch 查询

jquery - 从具有相同类别的组中单击的元素

c++ - QT c++内部变量移交

c - 为什么将变量 `i` 初始化为 0 和较大的大小会导致程序大小相同?