2014-09-22 128 views
-1

我試圖設置一個帶有Jquery的網頁,它將接收用戶的按鈕點擊,將這些點擊值傳遞給PHP腳本,然後將它們發佈到MQTT經紀人。我與經紀人的聯繫似乎正在發揮作用。我有問題將變量從JavaScript傳遞到PHP。我究竟做錯了什麼?我無法將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(); 
} 
?> 
+0

除非'test01'是一個變量,它需要封裝在引號中...... – War10ck 2014-09-22 19:27:50

回答

1

你傳遞無效的JSON對象$.post()方法。它應該是:

{testvalue:"test01"} 

所以,你的JavaScript代碼應該是這樣的:

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

或者,如果test01是可變的,應首先定義。

請下次在您的瀏覽器中查看控制檯,並檢查是否沒有錯誤以及ajax調用是否正確發送。

+0

謝謝,這工作。順便說一句,控制檯並沒有給我一個錯誤。 – user3147697 2014-09-22 20:14:11