我一直在研究PHP一段時間,現在和Ajax約一個月或兩個月。我仍然無法弄清楚PHP如何將數據發送到Ajax以及Ajax如何檢索數據。PHP如何將數據發送到Ajax?
任何人都可以發佈一個例子或東西嗎?
也許在提交一些文本之後..PHP將數據發送到數據庫,但Ajax如何接收並將其發佈到指定的字段而不刷新?
如果有幫助,我使用jQuery很多,所以如果你做一個Ajax請求PHP腳本我會使用它與阿賈克斯也
我一直在研究PHP一段時間,現在和Ajax約一個月或兩個月。我仍然無法弄清楚PHP如何將數據發送到Ajax以及Ajax如何檢索數據。PHP如何將數據發送到Ajax?
任何人都可以發佈一個例子或東西嗎?
也許在提交一些文本之後..PHP將數據發送到數據庫,但Ajax如何接收並將其發佈到指定的字段而不刷新?
如果有幫助,我使用jQuery很多,所以如果你做一個Ajax請求PHP腳本我會使用它與阿賈克斯也
它實際上比你想像的要複雜得多。把AJAX想象成只是請求任何舊網頁,訣竅就是它在幕後執行,「即時」,而不考慮瀏覽器的URL欄中的任何內容。
在這個意義上,你幾乎問錯了問題(幾乎),因爲它並不重要(在某種程度上)PHP如何服務的頁面。 AJAX可以請求從PHP提供的任何頁面。因此,舉例來說,假設你有一個簡單的PHP頁面,看起來像這樣:
<?php
$content = '<div class="content">content</div>';
echo $content;
?>
而且你將文件保存爲/content.html
從另一個頁面,您可以動態加載的內容,使用AJAX,並作爲jQuery是自己的喜好,可能是這樣的:
$('#result').load('/content.html #content');
.load()是特定類型的AJAX功能(有多種,最基本的幸福。阿賈克斯()我相信)負載HTML內容直接進入給定頁面。在這種情況下,上面發生的事情是,當你調用.load()函數時,它通過AJAX /content.html加載到內存中,查找名爲#content的元素(這恰好是一個div),然後插入加載的#content元素放入#result元素中。
請注意,我之前說「幾乎」和「某種」的原因在於,這取決於您在做什麼,如何格式化您的PHP頁面,這一點很重要。例如,請求使用AJAX格式的頁面很常見,格式爲XML,JSON或只是普通的舊HTML片段。當然,這是一個更密集的主題,但這裏有幾個示例教程:
http://www.xoops.org/modules/news/article.php?storyid=5103 http://www.factsandpeople。com/facts-mainmenu-5/26-html-and-javascript/89-jquery-ajax-json-and -php http://www.phpriot.com/articles/php-json-jquery-ajax-screencast
希望至少有所幫助。然而,網上有幾千個教程,只需在Google上搜索應該會產生大量的結果。
,
任何你echo
在PHP中會出現在Ajax請求的響應主體中。正如@webbiedave所說,這可以是例如明文,XML或HTML或JSON編碼數據。
您在PHP腳本中輸入的任何狀態碼(例如header("HTTP/1.1 404 Not Found")
)都會反映在Ajax結果中。如果拋出一個不成功的HTTP狀態代碼(例如404
或500
),則Ajax請求將失敗,並且(如果您使用jQuery的Ajax)將調用error
回調。
它只是在瀏覽器中發送請求到服務器,只在後臺進行,不需要重新加載。收到的數據是頁面的內容。如果您在瀏覽器中打開網址,您也會看到相同的結果。
HTTP是一個調用和響應協議。當客戶端使用AJAX向服務器發送請求時,請使用PHP輸出XML,JSON或HTML。 – webbiedave 2011-01-09 00:13:06
當您使用Ajax調用PHP頁面時,頁面上的任何內容都將通過XMLHttpRequest.responseText傳遞迴您的Javascript。閱讀Ajax教程,它會向你解釋一切。 – Jonah 2011-01-09 00:13:40
我明白,我還是不明白。 – nowayyy 2011-01-09 00:17:27