Cách lấy dữ liệu ajax trong php trên cùng một trang?

Câu hỏi này có vẻ hoàn toàn ngu ngốc, nhưng giả sử tôi có một trang PHP với một số xử lý biểu mẫu ở trên cùng bằng php và một biểu mẫu html bên dưới với hành động gửi đến cùng một trang và phương thức đăng. Làm cách nào để tôi nhận được kết quả qua ajax, tức là. gửi biểu mẫu cho chính bạn mà không cần làm mới trang, nếu điều đó hợp lý?

Giải pháp tốt nhất

Có vẻ như bạn đang hỏi về những điều cơ bản của Ajax phải không?

Đặt jQuery vào trang của bạn, sau đó làm điều gì đó như

$(document).ready(function(){
  $('#submit_button').click(function(){
    var something='value to send to PHP';
    $.post('name_of_page.php',{"a_var":something},function(data){ /* do something with the data you received back*/ },'json');
    });
  });

Sau đó, trong trang PHP của bạn, hãy thiết lập để xử lý một bài đăng hoặc đầu ra HTML bình thường

<?php
if($_POST['a_var']){
  $result=do_something($_POST['a_var']);
  echo json_encode($result);
  exit;
  }
//if there was no POST value, it continues to here
<html>
This is the rest of your page.
You'd have the form and the above javascript and so on here.
</html>

Giải pháp liên quan

Javascript – Cách để jQuery thực hiện một yêu cầu Ajax đồng bộ, thay vì không đồng bộ

Từ tài liệu jQuery. bạn chỉ định tùy chọn không đồng bộ là sai để nhận yêu cầu Ajax đồng bộ. Sau đó, cuộc gọi lại của bạn có thể đặt một số dữ liệu trước khi chức năng mẹ của bạn tiếp tục

Đây là mã của bạn sẽ trông như thế nào nếu được thay đổi như đề xuất

beforecreate: function (node, targetNode, type, to) {
    jQuery.ajax({
        url: 'http://example.com/catalog/create/' + targetNode.id + '?name=' + encode(to.inp[0].value),
        success: function (result) {
            if (result.isOk == false) alert(result.message);
        },
        async: false
    });
}

Javascript – Cách quản lý yêu cầu chuyển hướng sau lệnh gọi jQuery Ajax

Tôi đã đọc câu hỏi này và triển khai phương pháp đã được nêu liên quan đến việc đặt mã trạng thái HTTP phản hồi thành 278 để tránh trình duyệt xử lý các chuyển hướng một cách minh bạch. Mặc dù điều này hoạt động, tôi hơi không hài lòng vì nó hơi hack

Sau khi tìm hiểu kỹ hơn, tôi đã bỏ cách tiếp cận này và sử dụng JSON. Trong trường hợp này, tất cả phản hồi đối với yêu cầu AJAX đều có mã trạng thái 200 và phần thân của phản hồi chứa đối tượng JSON được tạo trên máy chủ. Sau đó, JavaScript trên máy khách có thể sử dụng đối tượng JSON để quyết định những gì nó cần làm

tôi đã có một vấn đề tương tự như của bạn. Tôi thực hiện một yêu cầu AJAX có thể có 2 phản hồi. một chuyển hướng trình duyệt đến một trang mới và một thay thế biểu mẫu HTML hiện có trên trang hiện tại bằng một biểu mẫu mới. Mã jQuery để làm điều này trông giống như

$.ajax({
    type: "POST",
    url: reqUrl,
    data: reqBody,
    dataType: "json",
    success: function(data, textStatus) {
        if (data.redirect) {
            // data.redirect contains the string URL to redirect to
            window.location.href = data.redirect;
        } else {
            // data.form contains the HTML for the replacement form
            $("#myform").replaceWith(data.form);
        }
    }
});

Đối tượng JSON "dữ liệu" được xây dựng trên máy chủ để có 2 thành viên. data.redirectdata.form. Tôi thấy cách tiếp cận này tốt hơn nhiều

Chào mọi người. Tôi có mã có thể gọi trang PHP một cách hiệu quả bằng AJAX  (không có JQuery). PHP phản hồi tốt với tiếng vang. Đây là javaScript gọi PHP để làm mới trang không cần phải thực hiện

 

function deleteCategory()
{
	var e= document.getElementById("dropDown1");
	var var1 = e.options[e.selectedIndex].text;
	var xmlhttp = new XMLHttpRequest();
	xmlhttp.onreadystatechange = alerta() {
	if (this.readyState == 4 && this.status == 200) {
		
			document.getElementById("insert").innerHTML = xmlhttp.responseText;
		}
	};
	
	xmlhttp.open("GET", "deleteRow.php?q=" + var1 , true);
	xmlhttp.send();
 }

Làm cách nào để gọi một hàm PHP trên cùng một trang trong khi vẫn giữ nguyên AJAX ở trên

 

Trân trọng,

Joshua

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?
Cách lấy dữ liệu ajax trong php trên cùng một trang?

gw1500se

Đăng ngày 20 tháng 12 năm 2020

gw1500se

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • Các thành viên
    • 1k
    • 3
  • Vị trí. Georgia, Hoa Kỳ

    • Chia sẻ

Đăng ngày 20 tháng 12 năm 2020

Không chắc chắn những gì bạn đang yêu cầu. Tất cả điều này được thực hiện ở phía máy khách để JavaScript có thể kiểm soát những gì được hiển thị. Gọi một hàm PHP bằng Ajax không thay đổi bất cứ điều gì trên trang đó trừ khi JavaScript thực hiện thay đổi. Hãy nhớ rằng PHP chỉ ở phía máy chủ và không trạng thái. JavaScript là phía máy khách và có thể kiểm soát hoàn toàn trang hiện tại. Do đó, một chức năng JavaScript/Ajax khác sẽ không ảnh hưởng đến chức năng này

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?
Cách lấy dữ liệu ajax trong php trên cùng một trang?

Barand

Đăng ngày 20 tháng 12 năm 2020

Barand

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • người điều hành
  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    • 23. 4k
    • 358
  • Vị trí. Cheshire, Vương quốc Anh
  • Tuổi. 73
  • quyên góp cho tôi

    • Chia sẻ

Đăng ngày 20 tháng 12 năm 2020

Có một ví dụ ở đây về xử lý yêu cầu ajax trong cùng một trang

 

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?
Cách lấy dữ liệu ajax trong php trên cùng một trang?

JoshEir

Đăng ngày 20 tháng 12 năm 2020

JoshEir

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • Các thành viên
    • 30
  • Vị trí. Virginia
  • Tuổi. 47

  • Tác giả

    • Chia sẻ

Đăng ngày 20 tháng 12 năm 2020 (đã chỉnh sửa)

Bạn có thể không đặt được php trong tập lệnh javascript, nhưng bạn chắc chắn có thể đặt chúng trên cùng một trang. Tôi đang tự hỏi làm thế nào để gọi một php trên cùng một trang bằng AJAX chứ không phải JQuery. Tôi đã thấy điều này sớm hơn và mất liên kết

Cách lấy dữ liệu ajax trong php trên cùng một trang?
 

Được chỉnh sửa vào ngày 20 tháng 12 năm 2020 bởi JoshEir
thêm văn bản

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?
Cách lấy dữ liệu ajax trong php trên cùng một trang?

maxxd

Đăng ngày 20 tháng 12 năm 2020

maxxd

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • guru
  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    • 1. 5k
    • 32
  • Vị trí. bắc Carolina

    • Chia sẻ

Đăng ngày 20 tháng 12 năm 2020 (đã chỉnh sửa)

Bạn không cần jQuery để chạy AJAX, bạn chỉ cần JavaScript. Vì vậy, hãy chuyển sang hiện đại với tìm nạp hoặc sử dụng XMLHttpRequest (hoặc ActiveXObject). Nếu bạn muốn thực hiện nhiều lệnh gọi AJAX từ cùng một trang, không gì có thể ngăn cản bạn - hãy chọn trình kích hoạt và gọi một mục tiêu PHP khác cho yêu cầu. Nếu bạn muốn trở nên phức tạp hơn, hãy chuyển tham số 'hành động' cho PHP của bạn và quyết định hành động sẽ chạy dựa trên điều đó -

let resp = fetch(url, {
	method: 'get',
	body: JSON.stringify({
		'action': 'doSomething',
		'data': ['data','more','etc']
	})
});

 

function doSomething(){
	switch($_GET['action']){
		case 'doSomething':
			doSomething($_GET['data']);
		break;
		case 'doSomethingElse':
			doSomethingElse($_GET['data']);
		break;
	}
}

(mã chưa được kiểm tra, chỉ là một ý tưởng cơ bản)

Đã chỉnh sửa ngày 20 tháng 12 năm 2020 bởi maxxd

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    1

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?
Cách lấy dữ liệu ajax trong php trên cùng một trang?

JoshEir

Đăng ngày 21 tháng 12 năm 2020

JoshEir

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • Các thành viên
    • 30
  • Vị trí. Virginia
  • Tuổi. 47

  • Tác giả

    • Chia sẻ

Đăng ngày 21 tháng 12 năm 2020 (đã chỉnh sửa)

Hừm. tôi đã tìm thấy nội dung này về javascript và php cùng nhau

<?php
// Call PHP function from javascript with parameters
function myphpfunction($x, $y){
    $z=$x+$y;
    return 'The sum is: '.$z;
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<script type="text/javascript">
    alert("<?php echo myphpfunction(4,90)?>");
</script>
</head>
<body>
</body>
</html>

Bây giờ, có vẻ như thao tác này không làm mới trang,  Tôi tự hỏi liệu nó có tốt như AJAX không?

Và maxxd, Có vẻ như quá trình tìm nạp sử dụng một URL, tôi có đúng không?

 

Josh

Tôi đoán điều này sẽ chỉ dành cho sự trở lại

Được chỉnh sửa vào ngày 21 tháng 12 năm 2020 bởi JoshEir

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?
Cách lấy dữ liệu ajax trong php trên cùng một trang?

JoshEir

Đăng ngày 21 tháng 12 năm 2020

JoshEir

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • Các thành viên
    • 30
  • Vị trí. Virginia
  • Tuổi. 47

  • Tác giả

    • Chia sẻ

Đăng ngày 21 tháng 12 năm 2020 (đã chỉnh sửa)

Tôi đoán điều này sẽ làm việc

 

chức năng onButtonPress()

{

}

Tôi không biết mình đang nghĩ gì, nó không thể thay thế cho AJAX

 

Được chỉnh sửa vào ngày 21 tháng 12 năm 2020 bởi JoshEir

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?
Cách lấy dữ liệu ajax trong php trên cùng một trang?

maxxd

Đăng ngày 21 tháng 12 năm 2020

maxxd

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • guru
  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    • 1. 5k
    • 32
  • Vị trí. bắc Carolina

    • Chia sẻ

Đăng ngày 21 tháng 12 năm 2020

Không có AJAX trong bất cứ thứ gì bạn vừa đăng. Tôi cũng cho rằng đó là một ví dụ vì không có gì mà một mình JavaScript không thể tự xử lý được. PHP sẽ phân tích cuộc gọi tới myphpfunction() trên máy chủ trước khi trang được gửi tới trình duyệt - JavaScript sẽ là thế này

________số 8_______

Nếu đó là tất cả những gì bạn cần, thì tốt thôi. Nếu bạn cần gọi myphpfunction() với các giá trị khác nhau dựa trên lựa chọn của người dùng và bạn không muốn tải lại toàn bộ trang, bạn sẽ phải sử dụng JavaScript và AJAX

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    1

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?
Cách lấy dữ liệu ajax trong php trên cùng một trang?

JoshEir

Đăng ngày 21 tháng 12 năm 2020

JoshEir

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • Các thành viên
    • 30
  • Vị trí. Virginia
  • Tuổi. 47

  • Tác giả

    • Chia sẻ

Đăng ngày 21 tháng 12 năm 2020 (đã chỉnh sửa)

Điều này sẽ được gọn gàng

tài liệu. getElementById("chèn"). innerHTML =

 

Được chỉnh sửa vào ngày 21 tháng 12 năm 2020 bởi JoshEir
thêm văn bản

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?
Cách lấy dữ liệu ajax trong php trên cùng một trang?

maxxd

Đăng ngày 21 tháng 12 năm 2020

maxxd

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • guru
  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    • 1. 5k
    • 32
  • Vị trí. bắc Carolina

    • Chia sẻ

Đăng ngày 21 tháng 12 năm 2020

Câu hỏi lớn hơn vào thời điểm này là vấn đề thực tế mà bạn đang cố gắng giải quyết là gì?

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?
    1

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cách lấy dữ liệu ajax trong php trên cùng một trang?

Khái niệmCommotion

Đăng ngày 22 tháng 12 năm 2020

Khái niệmCommotion

  • Cách lấy dữ liệu ajax trong php trên cùng một trang?

  • Các thành viên
    • 2. 4k
    • 14

    • Chia sẻ

Đăng ngày 22 tháng 12 năm 2020

Vào ngày 20/12/2020 lúc 5. 02 giờ chiều, JoshEir nói

Điều này sẽ được gọn gàng

tài liệu. getElementById("chèn"). innerHTML =

 

Xin chào JoshEir,

Bạn sẽ muốn dành vài phút hoặc có thể nhiều hơn nữa để hiểu sự khác biệt giữa mã máy chủ của mình (tôi. e. PHP) và mã máy khách của bạn (i. e. JavaScript hoặc có thể chỉ là JavaScript được ngụy trang thành jQuery. Giả sử chỉ có thể chia sẻ văn bản giữa chúng, vì vậy đừng mong đợi quá nhiều (JSON/etc cho phép chúng tôi đẩy rào cản văn bản và nhận được nhiều hơn) và chú ý đến vị trí của nội dung. Cho dù thế giới công nghệ cao đôi khi có vẻ như thế nào, nó thực sự không phải vậy

Làm cách nào để xử lý yêu cầu Ajax trên cùng một trang?

It is better to pass an extra parameter with the AJAX request to avoid any conflict with
variables if you are handling requests on the same page and add exit; or die(); at the end of the AJAX handling script. This stops adding unnecessary code with the AJAX response.

Làm cách nào để thực hiện cuộc gọi Ajax trên cùng một trang trong php?

Cách thực hiện cuộc gọi AJAX trên cùng một trang .
HTML .
jQuery. First including library .. .
PHP

Làm cách nào để lấy dữ liệu từ Ajax trong php?

Tìm nạp dữ liệu từ cơ sở dữ liệu bằng ajax trong PHP .
Kết nối PHP với cơ sở dữ liệu MySQL. Trước hết, bạn cần kết nối PHP với cơ sở dữ liệu MYSQL. .
Tạo Nút HTML để hiển thị dữ liệu khi nhấp chuột. Định cấu hình các bước sau –.
Hiển thị dữ liệu mà không cần tải lại trang bằng ajax. .
Tìm nạp dữ liệu từ bảng MySQL bằng PHP

Làm cách nào để chuyển dữ liệu từ Ajax sang trang khác?

Các giá trị của TextBox và DropDownList sẽ được gửi đến một trang khác theo bốn cách khác nhau bằng cách sử dụng jQuery. .

.

Làm cách nào để gửi và nhận dữ liệu bằng Ajax trong php?

Các bước để thực hiện yêu cầu POST Ajax với JQuery và PHP .
Tạo biểu mẫu HTML
Bao gồm thư viện jQuery
Viết kịch bản cho cuộc gọi ajax
Xử lý dữ liệu POST trong tệp PHP