SlideShare a Scribd company logo
1 of 13
Lập trình và Thiết kế Web 1
© 2007 Khoa Công nghệ thông tin
Khoa CNTT – ĐH.KHTN
AJAX
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
AJAX
Asynchronous JavaScript And Xml
AJAX
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
Ví dụ
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
Trang web
Submit
Server
Reload
New
page
Không dùng ajax
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
Dùng ajax
Trang web
Server
Update
javascript
Response
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
function onClick()// Ajax function
{
var xmlHttp;
xmlHttp.open("GET",“serverURL“,true);
xmlHttp.send(null);
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
//xử lí dữ liệu response;
}
}
}
Khỏi tạo đối tượng xmlHttp
……
echo (“noidung”);
......
Client Server
Code?
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
State Description
0 Request chưa được khởi tạo
1 Request đã được thiết lập
2 Request đã được gửi
3 Request đang được xử lí
4 Request được xử lí xong
Các trạng thái của thuộc tính
readyState
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
//Xử lí dữ liệu nhận được
}
}
Code?
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
Dữ liệu Server trả về sẽ được xử lý để
hiện thị tại đây
Ví dụ
testAjax.htm
<html>
<body>
<script src="selectcustomer.js"></script>
<form>
Select a Customer:
<select name="customers“ onchange="showCustomer(this.value)">
<option value="ALFKI">Alfreds Futterkiste</option>
<option value="NORTS ">North/South </option>
<option value="WOLZA">Wolski Zajazd</option>
</select>
</form>
<p>
<div id="txtHint"><b>Customer info will be listed here.</b></div>
</p>
</body>
</html>
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
AJAX – Browser Support
<script type="text/javascript">
xmlHttp=GetXmlHttpObject();
function GetXmlHttpObject(){
var objXMLHttp=null
if (window.XMLHttpRequest){
objXMLHttp=new XMLHttpRequest()
}
else if (window.ActiveXObject){
objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
}
return objXMLHttp
}
</script>
Trình duyệt
Firefox/Netscape…
Trình duyệt IE
Khởi tạo XMLHttp
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
AJAX – Đối tượng XMLHttpRequest
xmlHttp.onreadystatechange=stateChanged;
function stateChanged() {
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
}
}
Thiết lập hàm xử lý dữ
liệu trả về từ Server
Dữ liệu trả về từ
Server
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
AJAX – Gửi Request lên Server
function showCustomer(str){
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null){
alert ("Browser does not support HTTP Request");
return;
}
xmlHttp.onreadystatechange=stateChanged;
var url=“getcustomer.php“;
url=url+"?q="+str;
url=url+"&sid="+Math.random();
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
Gửi request lên
server
Lập trình và Thiết kế Web 1 – AJAX
© 2007 Khoa CNTT - ĐHKHTN
AJAX - The Server-Side ASP Script
Getcustomer.php
<?php
$connection = mysql_connect("localhost","fred","shhh");
mysql_select_db("winestore", $connection);
if (isset($_GET["q"])){
$sql="SELECT * FROM CUSTOMER WHERE CUST_ID='" . $_GET["q"] . "'";
$result = mysql_query ($sql, $connection);
// Show table
while ($row = mysql_fetch_array($result, MYSQL_NUM){
…
}
}
?>

More Related Content

Viewers also liked

Web course php co ban
Web course   php co banWeb course   php co ban
Web course php co ban慂 志慂
 
Ajax report
Ajax reportAjax report
Ajax reportdvcuong
 
BÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPT
BÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPTBÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPT
BÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPTMasterCode.vn
 
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầu
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầuTài liệu tìm hiểu jQuery dành cho người mới bắt đầu
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầuLel Đặng Văn
 
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPT
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPTBÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPT
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPTMasterCode.vn
 
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPTBài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPTMasterCode.vn
 

Viewers also liked (7)

Web course php co ban
Web course   php co banWeb course   php co ban
Web course php co ban
 
Ajax report
Ajax reportAjax report
Ajax report
 
Giao Trinh Jquery
Giao Trinh JqueryGiao Trinh Jquery
Giao Trinh Jquery
 
BÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPT
BÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPTBÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPT
BÀI 3 Thiết kế web cho di động với dreamweaver CS5 & Jquery - Giáo trình FPT
 
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầu
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầuTài liệu tìm hiểu jQuery dành cho người mới bắt đầu
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầu
 
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPT
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPTBÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPT
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPT
 
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPTBài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
 

Similar to Web course php ajax

Giới thiệu và sử dụng aja xr40
Giới thiệu và sử dụng aja xr40Giới thiệu và sử dụng aja xr40
Giới thiệu và sử dụng aja xr40timtailieucntt
 
Ajax control toolkit
Ajax control toolkitAjax control toolkit
Ajax control toolkitNguyen Huy
 
Tai lieu-huong dan ajax
Tai lieu-huong dan ajaxTai lieu-huong dan ajax
Tai lieu-huong dan ajaxtraitimvohon
 
Tai lieu-huong dan ajax
Tai lieu-huong dan ajaxTai lieu-huong dan ajax
Tai lieu-huong dan ajaxKim Hyun Hai
 
Bai4 basic jsp_4474
Bai4 basic jsp_4474Bai4 basic jsp_4474
Bai4 basic jsp_4474Ham Chơi
 
Lập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biếnLập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biếnSon Nguyen
 
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng CaoBài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng CaoTuan Nguyen
 
Bai2 tong quan_mvc_0567
Bai2 tong quan_mvc_0567Bai2 tong quan_mvc_0567
Bai2 tong quan_mvc_0567Ham Chơi
 
Javascript tong-hop a-z
Javascript tong-hop a-zJavascript tong-hop a-z
Javascript tong-hop a-zManhh Nguyễn
 
JavaEE Basic_Chapter3: Java Server Page
JavaEE Basic_Chapter3: Java Server PageJavaEE Basic_Chapter3: Java Server Page
JavaEE Basic_Chapter3: Java Server PagePhaolo Pham
 
Giao trinh asp.ne_tvoi_csharp
Giao trinh asp.ne_tvoi_csharpGiao trinh asp.ne_tvoi_csharp
Giao trinh asp.ne_tvoi_csharpngohanty13
 
Bai1 gioi thieu_servlet_va_jsp_8952
Bai1 gioi thieu_servlet_va_jsp_8952Bai1 gioi thieu_servlet_va_jsp_8952
Bai1 gioi thieu_servlet_va_jsp_8952Ham Chơi
 

Similar to Web course php ajax (20)

Giới thiệu và sử dụng aja xr40
Giới thiệu và sử dụng aja xr40Giới thiệu và sử dụng aja xr40
Giới thiệu và sử dụng aja xr40
 
Ajax control toolkit
Ajax control toolkitAjax control toolkit
Ajax control toolkit
 
Tai lieu-huong dan ajax
Tai lieu-huong dan ajaxTai lieu-huong dan ajax
Tai lieu-huong dan ajax
 
Tai lieu-huong dan ajax
Tai lieu-huong dan ajaxTai lieu-huong dan ajax
Tai lieu-huong dan ajax
 
Ung dung web chuong 5
Ung dung web  chuong 5Ung dung web  chuong 5
Ung dung web chuong 5
 
Bai 09 Basic jsp
Bai 09 Basic jspBai 09 Basic jsp
Bai 09 Basic jsp
 
Bai4 basic jsp_4474
Bai4 basic jsp_4474Bai4 basic jsp_4474
Bai4 basic jsp_4474
 
Ung dun web chuong 2
Ung dun web  chuong 2Ung dun web  chuong 2
Ung dun web chuong 2
 
Lập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biếnLập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biến
 
Ch06
Ch06Ch06
Ch06
 
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng CaoBài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
Bài 4: JSP Cơ Bản - Lập Trình Mạng Nâng Cao
 
Bai2 tong quan_mvc_0567
Bai2 tong quan_mvc_0567Bai2 tong quan_mvc_0567
Bai2 tong quan_mvc_0567
 
Php day4
Php day4Php day4
Php day4
 
Javascript tong-hop a-z
Javascript tong-hop a-zJavascript tong-hop a-z
Javascript tong-hop a-z
 
JavaEE Basic_Chapter3: Java Server Page
JavaEE Basic_Chapter3: Java Server PageJavaEE Basic_Chapter3: Java Server Page
JavaEE Basic_Chapter3: Java Server Page
 
Ajax
AjaxAjax
Ajax
 
Giao trinh java script
Giao trinh java scriptGiao trinh java script
Giao trinh java script
 
Giao trinh asp.ne_tvoi_csharp
Giao trinh asp.ne_tvoi_csharpGiao trinh asp.ne_tvoi_csharp
Giao trinh asp.ne_tvoi_csharp
 
Bai1 gioi thieu_servlet_va_jsp_8952
Bai1 gioi thieu_servlet_va_jsp_8952Bai1 gioi thieu_servlet_va_jsp_8952
Bai1 gioi thieu_servlet_va_jsp_8952
 
Ung dung web chuong 6
Ung dung web  chuong 6Ung dung web  chuong 6
Ung dung web chuong 6
 

Web course php ajax

  • 1. Lập trình và Thiết kế Web 1 © 2007 Khoa Công nghệ thông tin Khoa CNTT – ĐH.KHTN AJAX
  • 2. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN AJAX Asynchronous JavaScript And Xml AJAX
  • 3. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN Ví dụ
  • 4. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN
  • 5. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN Trang web Submit Server Reload New page Không dùng ajax
  • 6. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN Dùng ajax Trang web Server Update javascript Response
  • 7. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN function onClick()// Ajax function { var xmlHttp; xmlHttp.open("GET",“serverURL“,true); xmlHttp.send(null); xmlHttp.onreadystatechange=function() { if(xmlHttp.readyState==4) { //xử lí dữ liệu response; } } } Khỏi tạo đối tượng xmlHttp …… echo (“noidung”); ...... Client Server Code?
  • 8. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN State Description 0 Request chưa được khởi tạo 1 Request đã được thiết lập 2 Request đã được gửi 3 Request đang được xử lí 4 Request được xử lí xong Các trạng thái của thuộc tính readyState xmlHttp.onreadystatechange=function() { if(xmlHttp.readyState==4) { //Xử lí dữ liệu nhận được } } Code?
  • 9. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN Dữ liệu Server trả về sẽ được xử lý để hiện thị tại đây Ví dụ testAjax.htm <html> <body> <script src="selectcustomer.js"></script> <form> Select a Customer: <select name="customers“ onchange="showCustomer(this.value)"> <option value="ALFKI">Alfreds Futterkiste</option> <option value="NORTS ">North/South </option> <option value="WOLZA">Wolski Zajazd</option> </select> </form> <p> <div id="txtHint"><b>Customer info will be listed here.</b></div> </p> </body> </html>
  • 10. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN AJAX – Browser Support <script type="text/javascript"> xmlHttp=GetXmlHttpObject(); function GetXmlHttpObject(){ var objXMLHttp=null if (window.XMLHttpRequest){ objXMLHttp=new XMLHttpRequest() } else if (window.ActiveXObject){ objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP") } return objXMLHttp } </script> Trình duyệt Firefox/Netscape… Trình duyệt IE Khởi tạo XMLHttp
  • 11. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN AJAX – Đối tượng XMLHttpRequest xmlHttp.onreadystatechange=stateChanged; function stateChanged() { if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){ document.getElementById("txtHint").innerHTML=xmlHttp.responseText; } } Thiết lập hàm xử lý dữ liệu trả về từ Server Dữ liệu trả về từ Server
  • 12. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN AJAX – Gửi Request lên Server function showCustomer(str){ xmlHttp=GetXmlHttpObject(); if (xmlHttp==null){ alert ("Browser does not support HTTP Request"); return; } xmlHttp.onreadystatechange=stateChanged; var url=“getcustomer.php“; url=url+"?q="+str; url=url+"&sid="+Math.random(); xmlHttp.open("GET",url,true); xmlHttp.send(null); } Gửi request lên server
  • 13. Lập trình và Thiết kế Web 1 – AJAX © 2007 Khoa CNTT - ĐHKHTN AJAX - The Server-Side ASP Script Getcustomer.php <?php $connection = mysql_connect("localhost","fred","shhh"); mysql_select_db("winestore", $connection); if (isset($_GET["q"])){ $sql="SELECT * FROM CUSTOMER WHERE CUST_ID='" . $_GET["q"] . "'"; $result = mysql_query ($sql, $connection); // Show table while ($row = mysql_fetch_array($result, MYSQL_NUM){ … } } ?>