php中的ajax是什麼意思
在php中,ajax中文意思是“異步的JavaScript和XML技術”,是指一種創建交互式網頁應用的網頁開發技術;ajax可以使網頁實現異步更新,是一種在無需重新載入整個網頁的情況下,能夠更新部分網頁的技術。
本教學操作環境:windows7系統、javascript1.8.5&&PHP7.1版、Dell G3電腦。
Ajax是什麼意思?
ajax是Asynchronous JavaScript and XML(非同步的JavaScript和XML技術)的縮寫,是指一個建立互動式網頁應用程式的網頁開發技術;
ajax不是新的程式語言,而是一種使用現有標準的新方法。
ajax是一種用於建立快速動態網頁的技術。透過在後台與伺服器進行少量資料交換。 ajax可以使網頁實現非同步更新。這意味著可以在不重新載入整個網頁的情況下,對網頁的某個部分進行更新。而傳統的網頁(不使用ajax)如果需要更新內容,必須重載整個網站頁面。
看完了上述ajax的意思後,我們簡單來看一下ajax的優缺點。
ajax的優點:
1、最大的一點是頁面沒有刷新,使用者的體驗非常好。
2、使用非同步方式與伺服器通信,具有更迅速的回應能力。 。
3、可以把以前一些伺服器負擔的工作轉嫁到客戶端,利用客戶端閒置的能力來處理,減輕伺服器和頻寬的負擔,節省空間和寬頻租用成本。並且減輕伺服器的負擔,ajax的原則是“按需取資料”,可以最大程度的減少冗餘請求,和回應對伺服器造成的負擔。
4、基於標準化的並被廣泛支援的技術,不需要下載外掛程式或小程式。
5、ajax可使網際網路應用程式更小、更快,更友善。
ajax的缺點:
1、ajax不支援瀏覽器back按鈕。
2、安全性問題 AJAX揭露了與伺服器互動的細節。
3、對搜尋引擎的支援比較弱。
4、破壞了程式的異常機制。
5、不容易調試。
php中使用ajax
當使用者在上面的輸入方塊中鍵入字元時,會執行 "showHint()" 函數。此函數由"onkeyup" 事件觸發:
<html> <head> <script> function showHint(str) { if (str.length==0) { document.getElementById("txtHint").innerHTML=""; return; } if (window.XMLHttpRequest) { // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行的代码 xmlhttp=new XMLHttpRequest(); } else { //IE6, IE5 浏览器执行的代码 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("txtHint").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","gethint.php?q="+str,true); xmlhttp.send(); } </script> </head> <body> <p><b>在输入框中输入一个姓名:</b></p> <form> 姓名: <input type="text" onkeyup="showHint(this.value)"> </form> <p>返回值: <span id="txtHint"></span></p> </body> </html>
原始程式碼解釋:
如果輸入方塊是空的(str.length==0),則函數會清空txtHint 佔位符的內容,並退出該函數。
如果輸入框不是空的,那麼showHint() 會執行下列步驟:
建立XMLHttpRequest 物件
創建在伺服器回應就緒時執行的函數
向伺服器上的檔案傳送請求
#請注意新增至URL 末端的參數(q) (包含輸入框的內容)
PHP 檔案
#上面這段透過JavaScript 呼叫的伺服器頁面是名為"gethint.php"的PHP 檔案。
"gethint.php" 中的原始程式碼會檢查姓名數組,然後向瀏覽器傳回對應的姓名:
<?php // 将姓名填充到数组中 $a[]="Anna"; $a[]="Brittany"; $a[]="Cinderella"; $a[]="Diana"; $a[]="Eva"; $a[]="Fiona"; $a[]="Gunda"; $a[]="Hege"; $a[]="Inga"; $a[]="Johanna"; $a[]="Kitty"; $a[]="Linda"; $a[]="Nina"; $a[]="Ophelia"; $a[]="Petunia"; $a[]="Amanda"; $a[]="Raquel"; $a[]="Cindy"; $a[]="Doris"; $a[]="Eve"; $a[]="Evita"; $a[]="Sunniva"; $a[]="Tove"; $a[]="Unni"; $a[]="Violet"; $a[]="Liza"; $a[]="Elizabeth"; $a[]="Ellen"; $a[]="Wenche"; $a[]="Vicky"; //从请求URL地址中获取 q 参数 $q=$_GET["q"]; //查找是否由匹配值, 如果 q>0 if (strlen($q) > 0) { $hint=""; for($i=0; $i<count($a); $i++) { if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q)))) { if ($hint=="") { $hint=$a[$i]; } else { $hint=$hint." , ".$a[$i]; } } } } // 如果没有匹配值设置输出为 "no suggestion" if ($hint == "") { $response="no suggestion"; } else { $response=$hint; } //输出返回值 echo $response; ?>
解釋:如果JavaScript 發送了任何文字(即strlen($q ) > 0),則會發生:
尋找匹配JavaScript 發送的字元的姓名
- ##如果如果找不到匹配,則將回應字串設定為"no suggestion"
- 如果找到一個或多個符合姓名,則用所有姓名設定回應字串 ##把回應傳送至"txtHint" 佔位符
PHP Ajax 跨域問題解決方案本文透過設定Access -Control-Allow-Origin來實作跨域。
例如:客戶端的網域是client.runoob.com,而要求的網域是server.runoob.com。
如果直接使用ajax訪問,會有以下錯誤:
XMLHttpRequest cannot load http://server.runoob.com/server.php. No 'Access-Control-Allow-Origin' header is present on the requested resource.Origin 'http://client.runoob.com' is therefore not allowed access.
指定某網域(http:// client.runoob.com)跨網域訪問,則只需在http://server.runoob.com/server.php檔案頭新增以下程式碼:
header('Access-Control-Allow-Origin:http://client.runoob.com');
指定多個網域(http://client1.runoob.com、http://client2.runoob.com等)跨網域訪問,只需在http://server. runoob.com/server.php檔案頭新增以下程式碼:
$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : ''; $allow_origin = array( 'http://client1.runoob.com', 'http://client2.runoob.com' ); if(in_array($origin, $allow_origin)){ header('Access-Control-Allow-Origin:'.$origin); }
允許所有網域存取則只需在http:/ /server.runoob.com/server.php檔案頭新增如下程式碼:
header('Access-Control-Allow-Origin:*');
推薦學習:《
PHP影片教學以上是php中的ajax是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP 8.4 帶來了多項新功能、安全性改進和效能改進,同時棄用和刪除了大量功能。 本指南介紹如何在 Ubuntu、Debian 或其衍生版本上安裝 PHP 8.4 或升級到 PHP 8.4

Visual Studio Code,也稱為 VS Code,是一個免費的原始碼編輯器 - 或整合開發環境 (IDE) - 可用於所有主要作業系統。 VS Code 擁有大量針對多種程式語言的擴展,可以輕鬆編寫

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

字符串是由字符組成的序列,包括字母、數字和符號。本教程將學習如何使用不同的方法在PHP中計算給定字符串中元音的數量。英語中的元音是a、e、i、o、u,它們可以是大寫或小寫。 什麼是元音? 元音是代表特定語音的字母字符。英語中共有五個元音,包括大寫和小寫: a, e, i, o, u 示例 1 輸入:字符串 = "Tutorialspoint" 輸出:6 解釋 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。總共有 6 個元

本教程演示瞭如何使用PHP有效地處理XML文檔。 XML(可擴展的標記語言)是一種用於人類可讀性和機器解析的多功能文本標記語言。它通常用於數據存儲

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

PHP的魔法方法有哪些? PHP的魔法方法包括:1.\_\_construct,用於初始化對象;2.\_\_destruct,用於清理資源;3.\_\_call,處理不存在的方法調用;4.\_\_get,實現動態屬性訪問;5.\_\_set,實現動態屬性設置。這些方法在特定情況下自動調用,提升代碼的靈活性和效率。
