本地存储由 .php 脚本递增的 javascript 变量

Posted

技术标签:

【中文标题】本地存储由 .php 脚本递增的 javascript 变量【英文标题】:Locally storing a javascript variable which is incremented by .php script 【发布时间】:2015-06-04 23:51:28 【问题描述】:

我有一个在 .php 脚本中递增的 javascript 变量,除了 .php 脚本使页面重新加载然后重置变量之外没有问题,我的问题是,是否可以在本地存储一个javascript 变量即使整个增量发生在 .php 脚本中,并且变量和本地存储在带有变量和函数的 html 脚本中,但 html/javascript 文件和 .php 文件是分开的,这是困难的部分。

html/javascript:

<div class="bidVar">
  current amount: $<span id="bidVar"></span>
</div>

<script type="text/javascript"> 
  var bidVar= 1;
  document.getElementById("bidVar").innerHTML = bidVar;
  document.getElementByID("bidVar").value = bidVar;

  function addToCurrent() 
    bidVar= bidVar+ 1 ;
    document.getElementById("bidVar").innerHTML = bidVar;
  
</script>

.php:

<?php 
    echo '<script type="text/javascript"> addToCurrent(); </script>';
?>

【问题讨论】:

【参考方案1】:

本地存储中的变量由 PHP 递增:您的 PHP 脚本会输出一些执行此操作的 Javascript 代码。 您要么不必直接在 PHP 脚本中重定向,要么用指示下一页应该增加变量的内容进行重定向。

例子:

script.php

// ...
header('Location: mypage.php?increment=true');
exit();

mypage.php

// ...
if (isset($_GET['increment']) && $_GET['increment'] == true) 
    echo '<script type="text/javascript"> addToCurrent(); </script>';

// ...

【讨论】:

是否可以让变量仍然在同一个脚本中,然后在 .php 脚本中有一个函数,该函数重定向到另一个页面,然后增加变量,然后重定向到第一页其中的实际变量?【参考方案2】:

为了避免刷新页面并因此重新加载 JavaScript,您可能需要查看 AJAX 样式的页面。这样可以重新加载或操作页面的特定部分,可以调整 JavaScript 变量,但不会重新加载整个页面。

如果这不可能,您必须让您的 JavaScript 在单击链接或提交表单时发送其当前计数,让您的 PHP 捕获该数字,然后您的 PHP 将当前计数发送到您的 JavaScript,当页面重新加载。

【讨论】:

以上是关于本地存储由 .php 脚本递增的 javascript 变量的主要内容,如果未能解决你的问题,请参考以下文章

递增变量并将服务器端保存在 .php 脚本中

在 iOS 应用程序中本地存储的 Adob​​e Edge 动画?

当我的 python 脚本在服务器上运行时,如何访问我的本地网络摄像头? (实时人脸识别)

PHP_Session文件上传利用:文件包含

PHP - 如何使用自动增量更新表(值++)[重复]

使用 PDO for MySQL 时存储自动递增的 ID