Home > Backend Development > PHP Tutorial > PHP form submission: AJAX asynchronous submission and data processing

PHP form submission: AJAX asynchronous submission and data processing

王林
Release: 2023-08-07 17:32:02
Original
1049 people have browsed it

PHP form submission: AJAX asynchronous submission and data processing

PHP form submission: AJAX asynchronous submission and data processing

With the development of web applications, form submission has become one of the important links in website development. The traditional form submission method is to complete the sending and processing of data by refreshing the page. However, this method will cause the page to be refreshed, giving users a bad experience. In order to improve user experience and website performance, we can use AJAX technology for asynchronous form submission and data processing.

This article will introduce how to use PHP and AJAX technology to implement asynchronous submission and data processing of forms, and provide corresponding code examples.

AJAX asynchronous submission of form data

First, we need to create an HTML form and add a button for asynchronous submission. The code example is as follows:

<form id="myForm">
  <input type="text" name="name" placeholder="姓名" required>
  <input type="email" name="email" placeholder="邮箱" required>
  <input type="number" name="age" placeholder="年龄" required>
  <button type="button" id="submitBtn">提交</button>
</form>
Copy after login

In the above example, we use a form with the id "myForm" and add an attribute with the id "submitBtn" to the submit button.

Next, we need to use JavaScript to listen to the click event of the button and send the form data to the server. The code example is as follows:

document.getElementById("submitBtn").addEventListener("click", function() {
  var form = document.getElementById("myForm");
  var formData = new FormData(form);
  var xhr = new XMLHttpRequest();
  xhr.open("POST", "process.php", true);
  xhr.send(formData);
});
Copy after login

In the above example, we use the addEventListener method to listen for button click events. When the button is clicked, we use the FormData object to collect the form data and create an XMLHttpRequest object to send the data to the server.

PHP Data Processing

The server processes the received form data and returns the corresponding results. We can process the form data in a new PHP file. The code example is as follows:

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$age = $_POST['age'];

// 对表单数据进行进一步处理,比如存储到数据库

// 返回处理结果
$response = array("success" => true, "message" => "表单数据提交成功!");
echo json_encode($response);
?>
Copy after login

In the above example, we obtain the form data through the $_POST global variable. Next, we can perform more processing on the form data, such as verifying the validity of the data, storing the data in the database, etc.

Finally, we use the echo statement to return a JSON string containing the processing results for corresponding processing in the front-end page.

Front-end data processing

In the front-end page, we can add an element to display the processing results. The code example is as follows:

<div id="result"></div>
Copy after login

In JavaScript code, we can obtain the data returned by the server by listening to the readystatechange event of the XMLHttpRequest object, and display the results on the page. The code example is as follows:

xhr.onreadystatechange = function() {
  if (xhr.readyState === 4 && xhr.status === 200) {
    var result = JSON.parse(xhr.responseText);
    var message = result.message;
    document.getElementById("result").innerHTML = message;
  }
};
Copy after login

In the above example, we use the readyState attribute and status attribute to determine whether the request is completed. If it is completed and the response is successful, we use the JSON.parse method to parse the JSON string returned by the server, and Display the results on the page.

So far, we have completed the entire process of using AJAX to asynchronously submit form data and process it on the server side. In this way, users do not need to wait for the page to refresh and can obtain the data processing results in real time, which improves the user experience and performance of the website.

Conclusion

This article introduces how to use PHP and AJAX technology to implement asynchronous submission and data processing of forms, and gives corresponding code examples. Hope it helps with your website development!

The above is the detailed content of PHP form submission: AJAX asynchronous submission and data processing. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template