這種設置的美麗是頁面的結構與其功能完全隔離,這使開發和維護無麻煩。
>要添加這些事件偵聽器,我們將使用Prototype方便的觀察方法。我們首先為該頁面的加載事件添加了一個偵聽器。在此聽眾內部,我們將一個事件聽眾附加到表格的提交活動:
請注意,我們表格的事件偵聽器在提交表單時會撥打JavaScript函數storeaddress。此StoreadDress函數包含JavaScript,以對我們的PHP腳本進行AJAX調用。這就是外觀:
// Attach handler to window load event <br> Event.observe(window, 'load', init, false); <br> <br> function init() { <br> // Attach handler to form's submit event <br> Event.observe('addressForm', 'submit', storeAddress); <br> }
這個功能非常簡單。首先,通過顯示“添加電子郵件地址”消息,讓用戶可以進行某些事情。接下來,我們從表格中收集信息,以準備發送AJAX請求。請注意,我們如何使用Prototype的$ F函數訪問文本字段的內容,該函數在提供該表單元素的ID時抓住給定元素的值。我們使用JavaScript逃生函數將用戶輸入轉換為Unicode格式;這樣,它的URL就可以通過GET方法傳遞到PHP腳本。 然後,
function storeAddress(e) { <br> // Update user interface <br> $('response').innerHTML = 'Adding email address...'; <br> // Prepare query string and send AJAX request <br> var pars = 'address=' + escape($F('address')); <br> var myAjax = new Ajax.Updater('response', 'ajaxServer.php', {method: 'get', parameters: pars}); <br> // Stop form from submitting when JavaScript is enabled <br> Event.stop(e); <br> }
您要在其中顯示服務器響應的元素的ID
php腳本的URL
// Attach handler to window load event <br> Event.observe(window, 'load', init, false); <br> <br> function init() { <br> // Attach handler to form's submit event <br> Event.observe('addressForm', 'submit', storeAddress); <br> }
>是一個名為createTable.php的PHP文件,它將為您創建此表。但是,在運行此文件之前,您需要使用MySQL數據庫的詳細信息來更新dbconstants.php文件。我建議您立即更新此文件,因為我們將在下一部分中使用這些常數。
function storeAddress(e) { <br> // Update user interface <br> $('response').innerHTML = 'Adding email address...'; <br> // Prepare query string and send AJAX request <br> var pars = 'address=' + escape($F('address')); <br> var myAjax = new Ajax.Updater('response', 'ajaxServer.php', {method: 'get', parameters: pars}); <br> // Stop form from submitting when JavaScript is enabled <br> Event.stop(e); <br> }
StoreadDress所做的第一件事是將一個稱為$消息的變量初始化到非破壞空間。然後,它確保腳本已在查詢字符串中收到電子郵件地址。如果沒有,我們將將$消息變量設置為非破壞空間。 $消息將在此功能的末尾返回給呼叫者。
>>確定我們可以使用電子郵件地址,我們將要確保它是一個有效的地址。我們將使用正則表達式查找一些字母數字字符,然後是 @符號,更多字母數字字符,一個時期和一些字母數字字符。如果此測試失敗,我們將將$消息設置為錯誤消息,並告知用戶輸入的電子郵件地址無效:
CREATE TABLE `mailinglist` ( <br> `id` INT NOT NULL AUTO_INCREMENT , <br> `email` TEXT NOT NULL , <br> PRIMARY KEY ( `id` ) <br> );
如果地址通過此測試,我們將其存儲在數據庫中。為此,我們連接到MySQL,選擇數據庫並運行插入查詢。如果地址已正確存儲,我們將$消息設置為成功消息;否則,我們將$消息設置為錯誤消息。
<?php <br> require_once("inc/storeAddress.php"); <br> echo(storeAddress()); <br> ?>
>最後,我們將$消息返回ajaxserver.php:
function storeAddress() { <br> $message = " "; <br> // Check for an email address in the query string <br> if( !isset($_GET['address']) ){ <br> // No email address provided <br> }
>現在,加載頁面,輸入您的電子郵件地址並提交表格 - 您應該在沒有頁面重新加載的情況下看到將電子郵件地址添加到郵件列表表中。即使您禁用JavaScript,該頁面也會以非常相似的方式工作,除非使用JavaScript動態地將StoreadDress的輸出插入頁面中,而是直接將其插入頁面的PHP代碼中的HTML。
ajax(代表異步JavaScript和XML)是一種用於創建交互式Web應用程序的Web開發技術。 PHP是一種專為Web開發設計的服務器端腳本語言。合併後,AJAX和PHP可用於通過將數據從表單發送到服務器端腳本(PHP)而無需刷新頁面來構建郵件列表。這是使用AJAX中的XMLHTTPRequest對象完成的,該對象與服務器進行通信並異步更新頁面內容。 >我如何在PHP中使用PHP中的AJAX響應?迴聲語句用於輸出一個或多個字符串。在Ajax的上下文中,可以使用ECHO語句將響應發送回AJAX請求。 我如何使用AJAX使用AJAX使用PHP? >常見問題(常見問題解答)關於將AJAX與PHP一起構建郵件列表
>我如何將AJAX與PHP一起構建郵件列表?
> ajax中xmlhttprequest對像在AJAX中的作用是什麼?它用於異步從服務器發送和接收數據,這意味著它可以與服務器交換幕後數據,並在不重新加載整個頁面的情況下更新網頁的部分。
>>我如何將jQuery與Ajax和PHP?
jQuery一起使用。它使HTML文檔遍歷和操縱,事件處理和動畫之類的東西變得更加簡單,可以易於使用易於使用的API,可在許多瀏覽器中使用。通過多功能性和可擴展性的結合,JQuery改變了數百萬人寫JavaScript的方式。您可以使用jQuery的Ajax方法將異步HTTP請求發送到您的php腳本。
我如何調試Ajax和php?
debugguging and ajax and php php可以有點棘手,因為ajax androns andynchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchonchronchonchronchonchromenchonConrinCons但是,您可以使用瀏覽器的開發人員工具來檢查AJAX請求和響應。您還可以使用PHP的錯誤報告函數來捕獲和處理PHP腳本中的錯誤。
如何使用Ajax和die()die()die()ajax和php中的ajax和php中的錯誤處理AJAX和PHP?如果請求失敗,則調用錯誤()方法。 die()函數打印消息並退出當前腳本。 >我如何使用ajax將表單提交給PHP腳本? 您可以使用Ajax的post()方法將表單提交給PHP腳本。 post()方法將發布請求發送到服務器,它可以發送以通過php腳本處理的表單數據。
您可以使用AJAX來更新數據庫,您可以使用AJAX將數據發送到PHP腳本,然後可以更新數據庫。這是使用AJAX中的post()方法完成的,該方法將郵政請求發送給服務器,並使用要更新的數據發送。
>>我如何使用AJAX使用PHP?
從數據庫中檢索數據,您可以使用AJAX將請求發送到PHP腳本以從數據庫中檢索數據。然後,PHP腳本可以使用檢索到的數據將響應發送回AJAX請求。 >我如何使用ajax使用php? >您可以使用ajax將請求發送到php腳本從數據庫中刪除數據庫。然後,PHP腳本可以將響應發送回AJAX請求,以確認數據已刪除。
以上是使用AJAX和PHP構建您的郵件列表的詳細內容。更多資訊請關注PHP中文網其他相關文章!