我知道xmlHttpRequest
對象有一個方法send
,但我一直在整個這個網站上工作,而且我無法找到關於這個主題的任何半路體面的教程,我的大腦感覺像糊狀物。 Ajax很難。使用Ajax發送數據回到服務器
我想要做的是將數據從一個Javascript文件發送回服務器上的PHP腳本,其中數據只是一個字符串和一個小數字。這可能嗎?爲什麼我找不到關於這個主題的好文章?
tl; dr如何使用send
方法將字符串和數字從javascript文件傳遞到php文件?
我知道xmlHttpRequest
對象有一個方法send
,但我一直在整個這個網站上工作,而且我無法找到關於這個主題的任何半路體面的教程,我的大腦感覺像糊狀物。 Ajax很難。使用Ajax發送數據回到服務器
我想要做的是將數據從一個Javascript文件發送回服務器上的PHP腳本,其中數據只是一個字符串和一個小數字。這可能嗎?爲什麼我找不到關於這個主題的好文章?
tl; dr如何使用send
方法將字符串和數字從javascript文件傳遞到php文件?
爲什麼你不使用jQuery或類似的庫?
發送jQuery的一個變量將是這麼簡單:
$.post("save.php", { name: "John", time: "2pm" });
在你save.php文件,你可以處理POST變量,如你所願:
$name = $_POST["name"];
$time = $_POST["time"];
你可以檢查出來: http://jquery.com/
我想你是在浪費你的時間試圖做出自制的方法...
巧妙而簡單。 – 2013-04-06 18:20:49
使用jQuery,您可以使用post method:
$.post("test.php", { name: "John", number: 2 });
在幕後,這使用xmlHttpRequest
,看看源頭上看看他們是如何做到這一點。
第1步: 得到jquery。你所要做的就是下載最新的文件並將其包含在你的頁面上。
第2步: 使2個文件:
somepage.html:
<script type='text/javascript' src='jquery.js'></script>
<script type='text/javascript'>
$.get("someScript.php",
// data to send if you want
{
'someVar' : 'someValue'
},
// receive and do something with response
function(response){
alert(response);
} // function (response)
); // .get()
</script>
someScript.php
<?php
echo $_GET['someVar'] . " response!";
?>
第3步: 所有的文件上傳到你的服務器,並去somepage.html
就是這樣。儘管如此,你通常會將該代碼放在某種onclick或其他類型的內容中,具體取決於你想使用ajax的方式。但是那裏的評論很自我解釋。 jquery用於發送ajax請求,並以發送數據到接收請求的服務器端腳本爲例(使用GET方法)。你可以在someScript.php中做任何事情,但在這個例子中,它只是迴應你發送的值。然後jquery接受一些Script.php的回聲,並將它彈出。
btw大多數人(包括我自己)告訴你使用jquery或類似庫的原因是因爲不同的瀏覽器處理ajax對象/請求的方式稍有不同。 jquery和其他框架爲您提供所有的幫助,因此您只需使用單一語法,而不必擔心用戶使用哪個瀏覽器 – 2010-08-27 00:48:19
這裏有很多很好的鏈接,所以我不打算再補充一點。就像旁註一樣,你在這裏處理的是一個輕量級的ajaxness :) - 通常你會想從服務器發回一些東西來改變頁面的狀態,以響應第一個頁面發送的內容(實際上有人可能會爭辯說,爲什麼你首先需要ajax,而不是簡單發佈,如果頁面不應該改變 - 但我可以看到有什麼情況可能會出現你想要ajax)。我只是這麼說的,因爲你會遇到很多關於如何處理從服務器發回的東西的內容 - 只要確保你知道這不是你想要做的事情所需要的(我當我知道我能在第一遍中遺漏什麼時,我總是很高興;)
+1同意。從技術上講,您不需要在請求中發送數據,從技術上講,您不需要在響應中發送數據,但由於99%的ajax要發送和/或接收某些數據,因此您通常會看到作爲教程的一部分發送/接收數據的一個例子 – 2010-08-27 00:53:32
查看本文的第4部分和第5部分。 http://marcgrabanski.com/articles/jquery-google-maps-tutorial-ajax-php-mysql 不,我不是作者,但無論出於何種原因,我一直認爲這是其中的一個更全面的教程。 – LesterDove 2010-08-27 00:36:38
在什麼事件你想發送一個字符串到PHP腳本? – NAVEED 2010-08-27 00:42:05