XMLHttpRequest PHP

Thông thường chỉ có phương thức GET được sử dụng khi tạo ứng dụng Ajax. Nhưng có một số trường hợp POST là cần thiết khi tạo yêu cầu ajax. Điều này có thể vì nhiều lý do. Ví dụ: yêu cầu POST được coi là an toàn hơn yêu cầu GET vì việc tạo yêu cầu POST tương đối khó hơn tạo yêu cầu GET

Yêu cầu

  • Tạo một đối tượng XMLHTTPRequest sử dụng phương thức POST
  • Xem liệu các đối số được truyền cho nó có xuất hiện trong mảng '
    
    var url = "get_data.php";
    var params = "lorem=ipsum&name=binny";
    http.open["GET", url+"?"+params, true];
    http.onreadystatechange = function[] {//Call a function when the state changes.
    	if[http.readyState == 4 && http.status == 200] {
    		alert[http.responseText];
    	}
    }
    http.send[null];
    
    3' trong PHP không

Mã số

Đối tượng yêu cầu XMLHTTP

Để đơn giản, chúng ta sẽ tạo đối tượng XMLHTTPRequest bằng cách sử dụng hàm ' XMLHttpRequest[]' được Firefox hỗ trợ. Tôi tin rằng bạn biết cách thích hợp để tạo đối tượng XMLHttpRequest trên nhiều trình duyệt. Nếu không, hãy học điều đó trước

var http = new XMLHttpRequest[];

Sử dụng phương thức GET

Bây giờ chúng tôi mở một kết nối bằng phương thức GET


var url = "get_data.php";
var params = "lorem=ipsum&name=binny";
http.open["GET", url+"?"+params, true];
http.onreadystatechange = function[] {//Call a function when the state changes.
	if[http.readyState == 4 && http.status == 200] {
		alert[http.responseText];
	}
}
http.send[null];

Tôi thực sự hy vọng rằng điều này đã rõ ràng đối với bạn - Tôi giả định rằng bạn biết một chút mã hóa Ajax. Nếu không, vui lòng đọc hướng dẫn ajax giải thích những phần này trước khi tiếp tục

Chúng tôi sẽ thực hiện một số sửa đổi để phương thức POST sẽ được sử dụng khi gửi yêu cầu


var url = "get_data.php";
var params = "lorem=ipsum&name=binny";
http.open["POST", url, true];

//Send the proper header information along with the request
http.setRequestHeader["Content-type", "application/x-www-form-urlencoded"];
http.setRequestHeader["Content-length", params.length];
http.setRequestHeader["Connection", "close"];

http.onreadystatechange = function[] {//Call a function when the state changes.
	if[http.readyState == 4 && http.status == 200] {
		alert[http.responseText];
	}
}
http.send[params];

Thay đổi đầu tiên [và rõ ràng nhất] là tôi đã thay đổi đối số đầu tiên của hàm


var url = "get_data.php";
var params = "lorem=ipsum&name=binny";
http.open["GET", url+"?"+params, true];
http.onreadystatechange = function[] {//Call a function when the state changes.
	if[http.readyState == 4 && http.status == 200] {
		alert[http.responseText];
	}
}
http.send[null];
4 từ GET thành POST. Cũng lưu ý sự khác biệt trong đối số thứ hai - trong phương thức GET, chúng tôi gửi các tham số cùng với url được phân tách bằng dấu '?'

http.open["GET",url+"?"+params, true];

Nhưng trong phương thức POST, chúng ta sẽ chỉ sử dụng url làm đối số thứ hai. Chúng tôi sẽ gửi thông số sau

http.open["POST", url, true];

Một số tiêu đề http phải được đặt cùng với bất kỳ yêu cầu POST nào. Vì vậy, chúng tôi đặt chúng trong những dòng này

http.setRequestHeader["Content-type", "application/x-www-form-urlencoded"];
http.setRequestHeader["Content-length", params.length];
http.setRequestHeader["Connection", "close"];

Với những dòng trên, về cơ bản, chúng tôi đang nói rằng dữ liệu gửi ở định dạng gửi biểu mẫu. Chúng tôi cũng cung cấp độ dài của các thông số chúng tôi đang gửi

________số 8

Chúng tôi đặt trình xử lý cho sự kiện thay đổi 'trạng thái sẵn sàng'. Đây là cùng một trình xử lý mà chúng tôi đã sử dụng cho phương thức GET. Bạn có thể sử dụng


var url = "get_data.php";
var params = "lorem=ipsum&name=binny";
http.open["GET", url+"?"+params, true];
http.onreadystatechange = function[] {//Call a function when the state changes.
	if[http.readyState == 4 && http.status == 200] {
		alert[http.responseText];
	}
}
http.send[null];
5 tại đây - chèn vào div bằng cách sử dụng InternalHTML[AHAH], eval it[JSON] hoặc bất kỳ thứ gì khác

var http = new XMLHttpRequest[];
0

Cuối cùng, chúng tôi gửi các tham số với yêu cầu. Url đã cho chỉ được tải sau khi dòng này được gọi. Trong phương thức GET, tham số sẽ là một giá trị null. Nhưng trong phương thức POST, dữ liệu được gửi sẽ được gửi dưới dạng đối số của hàm


var url = "get_data.php";
var params = "lorem=ipsum&name=binny";
http.open["GET", url+"?"+params, true];
http.onreadystatechange = function[] {//Call a function when the state changes.
	if[http.readyState == 4 && http.status == 200] {
		alert[http.responseText];
	}
}
http.send[null];
6. Biến

var url = "get_data.php";
var params = "lorem=ipsum&name=binny";
http.open["GET", url+"?"+params, true];
http.onreadystatechange = function[] {//Call a function when the state changes.
	if[http.readyState == 4 && http.status == 200] {
		alert[http.responseText];
	}
}
http.send[null];
7 được khai báo ở dòng thứ hai là "lorem=ipsum&name=binny" - vì vậy chúng tôi gửi hai tham số - 'lorem' và 'name' với các giá trị 'ipsum' và 'binny' tương ứng

Đó là nó. Nếu bạn muốn xem hoạt động của tập lệnh này, tôi đã thiết lập một trang demo cho Ajax bằng cách sử dụng bài đăng

thư viện

Các phương pháp đã cho ở trên là cách thực hiện thủ công - bạn có thể tự động hóa việc này bằng cách sử dụng hàng trăm thư viện Ajax ngoài kia

XMLHttpRequest PHP là gì?

Đối tượng XMLHttpRequest có thể được sử dụng để yêu cầu dữ liệu từ máy chủ web . Đối tượng XMLHttpRequest là giấc mơ của các nhà phát triển, bởi vì bạn có thể. Cập nhật trang web mà không cần tải lại trang. Yêu cầu dữ liệu từ máy chủ - sau khi trang đã tải. Nhận dữ liệu từ máy chủ - sau khi trang đã tải.

AJAX và XMLHttpRequest có giống nhau không?

XMLHttpRequest là đối tượng trình duyệt thô mà jQuery bao bọc thành một biểu mẫu đơn giản và dễ sử dụng hơn cũng như chức năng nhất quán giữa các trình duyệt. jQuery. ajax là một trình yêu cầu Ajax chung trong jQuery có thể thực hiện bất kỳ yêu cầu nội dung và loại nào

XMLHttpRequest có lỗi thời không?

Hỗ trợ trình duyệt . it's now deprecated.

XMLHttpRequest là gì và nó được dùng để làm gì?

Các đối tượng XMLHttpRequest [XHR] được sử dụng để tương tác với máy chủ . Bạn có thể truy xuất dữ liệu từ một URL mà không cần phải làm mới toàn bộ trang. Điều này cho phép một trang Web chỉ cập nhật một phần của trang mà không làm gián đoạn hoạt động của người dùng. XMLHttpRequest được sử dụng nhiều trong lập trình AJAX.

Chủ Đề