王 丹
(遼寧省交通高等專科學校,遼寧 沈陽 110122)
AJAX技術在PHP開發中的應用分析
王 丹
(遼寧省交通高等專科學校,遼寧 沈陽 110122)
AJAX是目前最流行的Web開發技術之一,文章從AJAX技術的基本特點、執行原理和在PHP實際開發中的應用3個方面進行了描述,展現了AJAX在項目開發中的設計思想和極佳的用戶體驗性。
AJAX;PHP;Web開發技術
AJAX是一種用于創建快速動態網頁的技術,它不是新語言,而是一種使用現有標準的新思想、新方法。PHP在實現用戶注冊功能中,通常需要實現用戶名是否可用的校驗,傳統的校驗方法需要服務器程序處理并重新加載頁面,用戶每發出一個請求,整個頁面就會被全部刷新,頁面的刷新與用戶的請求是同步的,用戶體驗性不好。而利用AJAX技術,它通過與服務器程序進行少量數據交換,可以實現網頁異步更新,即可以在不重新加載整個網頁的情況下,對網頁的某部分進行更新。
異步JavaScript和XML(Asynchronous JavaScript and XML,AJAX)是異步JavaScript和XML技術,它是把JavaScript,XML,CSS,DOM等多種技術組合起來的一種新的編程思路和方法。它可以實現客戶端的異步請求操作,在不需要刷新頁面的情況下與服務器進行通信,從而減少了用戶的等待時間。使用AJAX技術,可以創建更接近本地桌面應用的、高可用的、更豐富、更動態的、符合用戶體驗的Web界面。
在傳統的頁面請求過程中,瀏覽器發出對數據的請求,然后等待服務器發回結果,接收完成后瀏覽器加載頁面,而頁面應用AJAX技術后,可以大大減少客戶端與服務器端之間的數據傳輸量,對數據的請求也可以異步發出,減輕了服務器的負擔,在整個AJAX服務器訪問過程中,用戶不必等待服務器響應和頁面刷新,而且服務器響應接收后只需要改變當前文檔對象,不需要影響整個頁面,也無需刷新整個頁面。
響應XMLHttpRequest是AJAX的基礎,用于和服務器交換數據。所有現代瀏覽器均支持XMLHttpRequest對象。AJAX處理過程中需創建一個XMLHttpRequest實例。使用HTTP方法(GET或POST)來處理請求,并將目標URL設置到XMLHttpRequest對象上。
當發送HTTP請求時,無需等待服務器的響應,通過頁面可以響應用戶的界面交互,并在服務器響應前處理它們。通過向XMLHttpRequest注冊一個回調函數,并異步地派發XMLHttpRequest請求。控制權馬上就被返回到瀏覽器,當服務器響應到達時,回調函數將會被調用。
PHP在實現用戶注冊功能中,通常需要實現用戶名是否可用的校驗。下面通過AJAX技術實現Web頁面無刷新用戶名校驗。
(1)實例化 XMLHttpRequest 對象。

(2)設置回調函數。
成功創建XMLHttpRequest 對象實例后,通過open方法打開連接,這里使用了手動GET方式傳遞參數,向服務器發出Get請求。


(3)創建PHP處理程序checkName.php。

(4)部署、運行,查看結果。
在Web前端頁面表單中,設置onblur事件調用功能函數funphp100(),當ID為“userName”的輸入框失去焦點時觸發AJAX請求,將用戶名發送到checkName.php文件并返回結果顯示在html頁面上。當輸入一個可用的用戶名,頁面顯示效果如圖1所示。

圖1 用戶名校驗效果
AJAX是一種良好的Web開發技術,它使Web開發設計出現了全新的變革,使其向豐富客戶端(Rich Internet Applications,RIA)的開發邁進,當然,任何東西有利也有弊,如果過多地使用JavaScript,那么客戶端將也非常臃腫,不利于用戶的瀏覽體驗,因此,在保證頁面運行順暢的前提下,還能夠做到較好的用戶體驗,是值得Web開發者共同努力的方向。
Application Analysis of AJAX for PHP Development
Wang Dan
(Liaoning Provincial College of Communications, Shenyang 110122, China)
AJAX is one of the most popular Web developing technologies. This paper describes three aspects including the basic characteristics, the implementation principle of AJAX and application in practical development of PHP, which shows AJAX’s design idea and excellent user experience in project development.
AJAX; PHP; Web developing technology
王丹(1980— ),女,遼寧營口。