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和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。

PHP適合web開發,特別是在快速開發和處理動態內容方面表現出色,但不擅長數據科學和企業級應用。與Python相比,PHP在web開發中更具優勢,但在數據科學領域不如Python;與Java相比,PHP在企業級應用中表現較差,但在web開發中更靈活;與JavaScript相比,PHP在後端開發中更簡潔,但在前端開發中不如JavaScript。

PHP和Python各有優劣,選擇取決於項目需求和個人偏好。 1.PHP適合快速開發和維護大型Web應用。 2.Python在數據科學和機器學習領域佔據主導地位。

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。
