1

我是这个主题的新手,所以这对你们大多数人来说可能是一个愚蠢的问题。我有一个简单的服务器,几个用户可以访问。如果其中任何一个更改了元素的 CSS 属性,其他人应该能够实时看到更改。

我应该使用 node.js 之类的东西来执行此操作吗?如何保存用户所做的更改?

该页面看起来像这样:http ://stom89.dyndns.org/

谢谢!

4

3 回答 3

2

我认为您需要使用 sql 数据库并使用 javascript 来检测更改并通过 AJAX 进行更新。这是我最好的主意。

于 2012-06-18T00:04:23.457 回答
2

我猜你想在你的 CSS / html 中改变的是状态。就像一盏灯是开/关的?然后,您需要将每个状态保存在 mySQL DB 中,然后获取每个用户的数据。如果你想让在线用户看起来像实时,那么使用 js(ajax) 定期同步数据。

没有数据库的替代方法是使用文件。

如果您不想为此使用 mysql,则可以使用文件。我建议使用 ini 文件。有关如何读取/写入 ini 文件的更多信息,您可以访问此问题。它非常简单,您可以将每个变量放在一个漂亮的数组中。

你需要什么:一点 PHP,一点 jQuery(或 js),了解 GET 变量

我建议你创建 3 个文件。

index.php
您的主页面,即客户端。使用 get 变量提取信息。您可以为此使用 jQuery.get()。

getstate.php
这个文件将读取 ini 文件并返回每个设备的状态。使用 index.php 中的 jQuery.get() 读取它们。

savestate.php
这是您将从 index.php 发送新状态的文件 示例请求:http ://address.goes.here/savestate.php?bedroomlight=1&garagelight=0

更有趣的是,ini 文件可以通过多种编程语言轻松编写/读取,因此您可以使用 Raspberry Pi 轻松操作数据。(比如有人开灯,脚本轮询状态可能会改变 ini 文件)

于 2012-06-18T00:13:50.657 回答
1

如果我完全理解你的问题,我已经把这个话题搞砸了一段时间。我建议查看 python、ruby 或 node.js,尽管我不能说哪个对你来说最容易学习,但我建议使用 python 和一个可能是猿的彗星服务器,只需让服务器将更新推送给那些已经在网站上。

编辑: 轮询建议:: jQuery
http://api.jquery.com/jQuery.get/用于标准数据检索,这几乎是您所需要的。

于 2012-06-18T00:10:28.320 回答