Я пытаюсь настроить веб-страницу с 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();
}
?>
Вы передаете недопустимый объект JSON $.post()
метод. Так должно быть:
{testvalue:"test01"}
Итак, ваш код JavaScript должен выглядеть так:
$(document).ready(function(){
$("#button01").click(function(){$.post("post.php", {testvalue:"test01"});});
});
Или если test01
переменная, она должна быть определена первой.
Пожалуйста, в следующий раз посмотрите на консоль в вашем браузере и проверьте, нет ли ошибок и правильно ли отправляет вызов ajax.
Других решений пока нет …