【问题标题】:Does everyone shares the same javascript file?每个人都共享相同的 javascript 文件吗?
【发布时间】:2014-10-05 14:56:45
【问题描述】:

所以我使用 Javascript 和 ajax 通过 php 文件连接到数据库,但我想到了一些事情。

如果用户登录,用户数据将存储在我的Javascript文件标题UserProces.js中:

Var Username = "James"
Var Age ="25";

(通过php从查询中获取数据:RetrieveUserData.php

如果詹姆斯登录后1分钟,另一个用户名艾米登录,艾米的姓名和年龄的值会影响詹姆斯的值吗?因为只有一个UserProces.js

【问题讨论】:

  • 嗯... JavaScript 文件不是数据库。您实际拥有的是 JS 文件还是数据库?
  • No no no.. Javascript 仅用于 CLIENT SIDE。这意味着更改 javascript 值不会反映其他浏览器上的更改。您必须将其保存在服务器端,例如。数据库、文件等。
  • @BhaveshGangani 您可以将变量存储在 JS 文件中,但通常不太实用。
  • @Teemu 是的,我们可以将变量存储在 JS 文件中。但是一个客户端上的更改并不反映其他浏览器的更改。
  • @BhaveshGangani OP 说:“通过 php 文件”,这使得在服务器上操作 JS 文件成为可能。

标签: javascript php database


【解决方案1】:

当然不!每个用户都在获取他的本地 javascript 文件副本。

【讨论】:

  • 呃……如果是副本,不是所有用户都共享同一个文件吗?
  • 不,他们不分享。
【解决方案2】:

服务器向每个请求页面的客户端发送一份它所存储的 javascript 文件的副本。然后该副本在他们的浏览器中并在那里运行。对变量的任何更改都在其浏览器中的该副本中完成。他们必须通过方式(好吧,除非您设置了一些特殊的东西)来更改服务器上的原始文件。可以这样想:

我是一名教师,我的计算机上有一个测试文档(这是服务器上的 javascript 文件)。对于每个进入课堂并要求参加考试的学生(客户请求页面),我将在我的打印机中打印一份副本并给他们。然后他们将在测试中写下他们的名字并填写答案(为变量赋值)。这样做的学生不会影响班上的其他人,因为他们没有更改原始文档,他们只是在编辑他们的副本。

显然,这不是一个完美的类比,但非常接近。

此外,针对之前的评论,您可能没有“通过 php 文件”访问该服务。您正在使用 php 文件来生成网页的副本以供用户查看。同样,为用户打印一份副本,但在这种情况下,php 文件给出了一组特殊的指令,说明应该“打印”什么。

【讨论】:

    【解决方案3】:

    每个用户将加载相同的脚本文件,但所有变量、对象和其他所有内容都由每个浏览器存储,甚至您的浏览器也不共享该信息,这会阻止一个网站访问另一个网站上的变量。

    所以,最终答案是否定的。他们不会分享任何信息。只需加载相同的“基础”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-20
      • 2017-04-30
      • 1970-01-01
      • 2012-01-20
      • 2016-06-15
      • 1970-01-01
      • 1970-01-01
      • 2019-11-06
      相关资源
      最近更新 更多