Hướng dẫn how to get json data in php from ajax - cách lấy dữ liệu json trong php từ ajax

Tôi muốn gửi dữ liệu bằng API JQuery AJAX:

var myData = {"param1" : $('#txtParam1').val(), "param2" : $('#txtParam2').val()};

$.ajax({
    url: 'DataService.php?action=SomeAction',
    type: 'POST',
    data: myData,
    dataType: 'json',
    contentType: "application/json; charset=utf-8",
    success: function(result) {
    alert(result.Result);}
});

Khi tôi cố gắng truy xuất dữ liệu này bằng PHP bằng cách sử dụng

    $param1 = $_REQUEST['param1'];

$param1 đang hiển thị nullprint_r($_REQUEST) chỉ hiển thị hành động = somacition ..

Làm cách nào để truy xuất dữ liệu được đăng trên trang PHP?

JSON là viết tắt của ký hiệu đối tượng JavaScript, đây là định dạng-InterChange Data cũng được sử dụng để truyền dữ liệu từ máy chủ.

Đó là cách tốt nhất và hiệu quả nhất khi cần trả lại nhiều giá trị như một phản hồi từ tập lệnh PHP cho jQuery.

Bạn không thể trực tiếp trả lại & nbsp; một mảng từ Ajax, nó phải chuyển đổi ở định dạng hợp lệ.

Trong trường hợp này, bạn có thể sử dụng định dạng XML hoặc JSON.

Trong Trình diễn hướng dẫn, I & NBSP; sẽ trả về & nbsp; một mảng người dùng từ Ajax, trong khi & nbsp; Trả về chuyển đổi mảng thành định dạng JSON bằng hàm json_encode () trong PHP.

Trên cơ sở phản hồi & nbsp; show & nbsp; dữ liệu ở định dạng bảng.

Hướng dẫn how to get json data in php from ajax - cách lấy dữ liệu json trong php từ ajax


Nội dung

  1. Cấu trúc bảng
  2. Cấu hình
  3. HTML
  4. PHP
  5. jQuery
  6. Thử nghiệm
  7. Sự kết luận

1. Cấu trúc bảngTable structure

Tôi đang sử dụng bảng

    $param1 = $_REQUEST['param1'];
0 trong ví dụ.

CREATE TABLE `users` (
  `id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  `username` varchar(100) NOT NULL,
  `name` varchar(100) NOT NULL,
  `email` varchar(100) NOT NULL,
  `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

2. Cấu hìnhConfiguration

Tạo & nbsp;

    $param1 = $_REQUEST['param1'];
1 cho cấu hình cơ sở dữ liệu.

Đã hoàn thành mã

<?php

$host = "localhost"; /* Host name */
$user = "root"; /* User */
$password = ""; /* Password */
$dbname = "tutorial"; /* Database name */

$con = mysqli_connect($host, $user, $password,$dbname);
// Check connection
if (!$con) {
 die("Connection failed: " . mysqli_connect_error());
}

3. HTMLHTML

Tạo

    $param1 = $_REQUEST['param1'];
2 để hiển thị danh sách người dùng bằng phản hồi AJAX.

Đã hoàn thành mã

<div class="container">
   <table id="userTable" border="1" >
      <thead>
        <tr>
          <th width="5%">S.no</th>
          <th width="20%">Username</th>
          <th width="20%">Name</th>
          <th width="30%">Email</th>
        </tr>
      </thead>
      <tbody></tbody>
   </table>
</div>

<?php

$host = "localhost"; /* Host name */
$user = "root"; /* User */
$password = ""; /* Password */
$dbname = "tutorial"; /* Database name */

$con = mysqli_connect($host, $user, $password,$dbname);
// Check connection
if (!$con) {
 die("Connection failed: " . mysqli_connect_error());
}

3. HTML

Đã hoàn thành mã

<?php

include "config.php";

$return_arr = array();

$query = "SELECT * FROM users ORDER BY NAME";

$result = mysqli_query($con,$query);

while($row = mysqli_fetch_array($result)){
    $id = $row['id'];
    $username = $row['username'];
    $name = $row['name'];
    $email = $row['email'];

    $return_arr[] = array("id" => $id,
                    "username" => $username,
                    "name" => $name,
                    "email" => $email);
}

// Encoding array in JSON format
echo json_encode($return_arr);

<?php $host = "localhost"; /* Host name */ $user = "root"; /* User */ $password = ""; /* Password */ $dbname = "tutorial"; /* Database name */ $con = mysqli_connect($host, $user, $password,$dbname); // Check connection if (!$con) { die("Connection failed: " . mysqli_connect_error()); }jQuery

3. HTML

Tạo

    $param1 = $_REQUEST['param1'];
2 để hiển thị danh sách người dùng bằng phản hồi AJAX.

Tạo tệp

    $param1 = $_REQUEST['param1'];
3 để xử lý yêu cầu AJAX. For handling JSON response you have to set
    $param1 = $_REQUEST['param1'];
8 while sending AJAX request.

Đã hoàn thành mã

$(document).ready(function(){
    $.ajax({
        url: 'ajaxfile.php',
        type: 'get',
        dataType: 'JSON',
        success: function(response){
            var len = response.length;
            for(var i=0; i<len; i++){
                var id = response[i].id;
                var username = response[i].username;
                var name = response[i].name;
                var email = response[i].email;

                var tr_str = "<tr>" +
                    "<td align='center'>" + (i+1) + "</td>" +
                    "<td align='center'>" + username + "</td>" +
                    "<td align='center'>" + name + "</td>" +
                    "<td align='center'>" + email + "</td>" +
                    "</tr>";

                $("#userTable tbody").append(tr_str);
            }

        }
    });
});

<?php $host = "localhost"; /* Host name */ $user = "root"; /* User */ $password = ""; /* Password */ $dbname = "tutorial"; /* Database name */ $con = mysqli_connect($host, $user, $password,$dbname); // Check connection if (!$con) { die("Connection failed: " . mysqli_connect_error()); }Demo

3. HTML


Tạo $param1 = $_REQUEST['param1']; 2 để hiển thị danh sách người dùng bằng phản hồi AJAX.Conclusion

Tạo tệp

    $param1 = $_REQUEST['param1'];
3 để xử lý yêu cầu AJAX.

Khởi tạo mảng

    $param1 = $_REQUEST['param1'];
4 với chi tiết người dùng (ID, tên người dùng, tên và email) và trước khi trả về chuyển đổi nó sang định dạng JSON bằng hàm
    $param1 = $_REQUEST['param1'];
5.

5. JQuery

Làm thế nào để nhận phản hồi JSON bằng Ajax?

Cách tiếp cận: Để giải quyết vấn đề này, trước tiên chúng tôi sẽ xem xét một tệp JSON có tên là Thủ đô. JSON, và cố gắng lấy dữ liệu JSON này làm phản hồi bằng AJAX. Sau đó, chúng tôi sẽ tạo một tệp HTML. HTML, chứa một bảng mà chúng tôi sẽ sử dụng để điền dữ liệu chúng tôi đang nhận được.

Làm thế nào để có được dữ liệu trong AJAX PHP?

Thực hiện yêu cầu AJAX GET để lấy dữ liệu từ máy chủ Tạo bảng MySQL và chèn dữ liệu. Tạo biểu mẫu HTML và tập lệnh jQuery để thực hiện yêu cầu AJAX GET đến Máy chủ PHP MySQL. Viết tập lệnh PHP để nhận yêu cầu từ máy khách và tìm nạp dữ liệu từ cơ sở dữ liệu MySQL và gửi kết quả được mã hóa JSON cho máy khách.Create a MySQL table and insert data. Create HTML form and jQuery script to perform AJAX GET Request to PHP MySQL Server. Write a PHP script to receive request from client and fetch data from MySQL database and send a JSON encoded result to client.

Làm thế nào tôi có thể nhận được dữ liệu cụ thể từ phản hồi AJAX?

Bạn không thể không đồng bộ.Nếu bạn muốn làm bất cứ điều gì với nó, bạn cần phải làm điều đó trong một cuộc gọi lại.Làm sao?Bởi vì nó không đồng bộ, JavaScript sẽ thoát khỏi yêu cầu AJAX, sau đó ngay lập tức chuyển sang thực thi bit mã tiếp theo và có thể sẽ làm như vậy trước khi nhận được phản hồi AJAX.you need to do it in a callback. How? Because it's asynchronous, javascript will fire off the ajax request, then immediately move on to execute the next bit of code, and will probably do so before the ajax response has been received.

Làm thế nào hiển thị dữ liệu JSON trong HTML bằng AJAX?

Bước 1: Đầu tiên, đặt tệp JSON mang nhiều tập dữ liệu và xây dựng yêu cầu AJAX để hiển thị dữ liệu JSON trong bảng HTMOL.Chúng tôi yêu cầu sử dụng phương thức Ajax () của JQuery để gửi yêu cầu HTTP ..
Bước 2: Tạo trình giữ chỗ bảng HTML.....
Bước 3: Bao gồm kiểu dáng CSS.....
Bước 4: Tạo cuộc gọi AJAX để điền vào bảng HTML với dữ liệu JSON.....
0 Câu trả lời ..