-1

我正在尝试使用 Jquery 设置一个网页,该网页将接收来自用户的按钮点击,将这些点击值传递给 PHP 脚本,然后将它们发布到 MQTT 代理。我与经纪人的联系似乎有效。我在将变量从 JavaScript 传递到 PHP 时遇到问题。我究竟做错了什么?

这是我的 JavaScript:

<script>
$(document).ready(function(){
  $("#button01").click(function(){$.post("post.php", {testvalue:test01});});
});
</script>

这是我的PHP:

<?php
require("../phpMQTT.php");

$testvalue = $_POST['testvalue'];

$mqtt = new phpMQTT("192.168.1.20", 8000, "client"); 

if ($mqtt->connect()) {
    $mqtt->publish("hello/world","$testvalue",0);
    $mqtt->close();
}
?>
4

1 回答 1

1

您将无效的 JSON 对象传递给$.post()方法。它应该是:

{testvalue:"test01"}

因此,您的 JavaScript 代码应如下所示:

$(document).ready(function(){
    $("#button01").click(function(){$.post("post.php", {testvalue:"test01"});});
});

或者如果test01是变量,则应首先定义。

请下次在浏览器中查看控制台并检查是否没有错误以及 ajax 调用是否正确发送。

于 2014-09-22T19:27:48.483 回答