【问题标题】:Change HTML on page based on Address? (PHP or Javascript) [closed]根据地址更改页面上的 HTML? (PHP或Javascript)[关闭]
【发布时间】:2014-08-31 19:49:51
【问题描述】:

我需要服务器上的单个页面,该页面将写入“false”或“true”。

但是,我需要该页面根据地址自行编辑。例如,如果我要导航到http://domain.com/file.html?item=true,我需要页面自己将值更改为“true”,这样一旦我导航到http://domain.com/file.html,我就需要看到页面上写着“true”。或者,如果我导航到http://domain.com/file.html?item=false,它会自动更改为“false”,这样一旦我导航到http://domain.com/file.html,我就会在页面上看到“false”。

这是一个 arduino 项目,我让 arduino 监视文件,如果文件状态为“false”,则它什么也不做。如果文件状态为“真”,它会开始闪烁 LED。因为我希望它是无线的,所以我将它托管在服务器上,并让 arduino 在线检查文件中项目的状态。或者我可以直接在 arduino 上托管网络服务器。我知道该怎么做的整个 arduino 部分。只是不知道服务器上具有“true”或“false”值的文件。

老实说,我不知道如何使用 PHP 或 Javascript 来做到这一点。

有人可以帮忙吗? :)

【问题讨论】:

  • 尝试使用sessions
  • @Oriol Sessions 不起作用,因为 OP 想要从他的机器设置值,然后从 Arduino 读取它。
  • cookie 怎么样? @IngoBürk
  • @IngoBürk 没错,我不太了解情况。 Idris,cookie 和会话有同样的问题。

标签: javascript php html post get


【解决方案1】:

您可以将值保存在服务器上的文本文件中:

<?php
$filename = "current.txt";

if(isset($_GET['item'])) {
  $item = $_GET['item'];
  if($item !== "true" && $item !== "false") {
      die("attempted to write illegal value");
  }

  file_put_contents($filename, $item);
}

echo file_get_contents($filename);
?>

但是,这感觉真的很老套和变通方法,而不是好的解决方案。它基本上是一个简单的“文本文件数据库”。

我对 Arduinos 一无所知,但你为什么不建立与 Arduino 的实际连接,将值发送给它并让它自己存储当前值呢?我相信这是可能的。

【讨论】:

  • 有可能,是的,但我希望这是无线的。我正在尝试创建一个物理通知设备,以便在我的手机收到通知时点亮一盏灯。如果我要将手机连接到 arduino(很有可能),我可以手动检查手机上的通知。所以我正在尝试创建一个无线系统,我的手机会在其中检查通知,发送命令,然后 arduino 通过检查文件并根据文件中的值执行该命令。
  • 连接仍然可以是无线的;)您提到在 Arduino 上托管服务器。这不意味着您还是直接将手机连接到设备吗?我仍然不明白为什么您的手机不直接将请求发送到某个 Web 服务器,而不是直接将请求发送到 Arduino。但是,嘿,这是你的项目。我的回答对你有帮助吗?如果是这样,请考虑将其标记为已接受。
猜你喜欢
  • 2018-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-28
  • 2021-12-09
相关资源
最近更新 更多