Ở đây chúng tôi sử dụng 3 tệp để Chèn dữ liệu vào cơ sở dữ liệu MySql bằng Ajax
- cơ sở dữ liệu. php
- mục lục. php
- tiết kiệm. php
Bảng user_data
CREATE TABLE `user_data` [ `id` int[11] NOT NULL, `name` varchar[100] NOT NULL, `email` varchar[50] NOT NULL, `phone` varchar[100] NOT NULL, `city` varchar[50] NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=latin1;
cơ sở dữ liệu. php
mục lục. php
Insert data in MySQL database using Ajax
×
Name:
Email:
Phone:
City:
tiết kiệm. php
200]]; } else { echo json_encode[array["statusCode"=>201]]; } mysqli_close[$conn]; ?>
Ở đây chúng tôi sử dụng 3 tệp để xem dữ liệu từ cơ sở dữ liệu MySql bằng Ajax
- cơ sở dữ liệu. php
- view_ajax. php
- lượt xem. php
Bảng user_data
CREATE TABLE `crud` [ `id` int[11] NOT NULL, `name` varchar[100] NOT NULL, `email` varchar[100] NOT NULL, `phone` varchar[100] NOT NULL, `city` varchar[100] NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=latin1;
cơ sở dữ liệu. php
view_ajax. php
query[$sql]; if [$result->num_rows > 0] { while[$row = $result->fetch_assoc[]] { ?>
lượt xem. php
View Ajax
View data
Name Email Phone City
Đến cuối hướng dẫn này, bạn sẽ có thể lấy dữ liệu từ cơ sở dữ liệu bằng AJAX bằng Javascript đơn giản [không có jQuery]. Lợi ích của việc sử dụng AJAX là
- Trang tải nhanh hơn vì sẽ không có tập lệnh PHP nào chạy trong khi tải trang
- Nếu muốn thay đổi dữ liệu, bạn có thể thực hiện dễ dàng mà không cần phải làm mới trang
- Bạn có thể hiển thị cùng một dữ liệu trên nhiều trang mà không phải viết lại truy vấn. Chỉ cần gọi cùng một chức năng javascript
AJAX được sử dụng ở đâu?
Ứng dụng bản đồ Google Earth
Khi bạn cuộn trong Google Earth, một yêu cầu AJAX sẽ được gửi để lấy hình ảnh của vị trí mới
Khi bạn cuộn đến cuối trang trong Facebook, một yêu cầu AJAX sẽ được gửi để tải các bài đăng cũ hơn
Biểu đồ & Đồ thị
Trong biểu đồ, khi bạn thay đổi giá trị ngày, biểu đồ đã được cập nhật theo ngày đã chọn thông qua AJAX
Chúng tôi sẽ hiển thị hồ sơ của nhân viên từ bảng cơ sở dữ liệu. Chúng tôi đang sử dụng cơ sở dữ liệu có tên classicmodel, cơ sở dữ liệu này sẽ được đưa vào tệp nguồn
Tạo một bảng HTML
Trước tiên, chúng ta sẽ tạo một tệp để hiển thị dữ liệu từ cơ sở dữ liệu có tên là chỉ mục. php
Create a simple HTML table and give a unique ID to
tag________số 8
Gọi AJAX để lấy dữ liệu từ cơ sở dữ liệu
Để gọi một AJAX để lấy dữ liệu, trước tiên hãy tạo một đối tượng XMLHttpRequest tích hợp sẵn và lưu vào biến ajax
var ajax = new XMLHttpRequest[];
Bây giờ, hãy gọi hàm open[method, url, async] từ đối tượng ajax
0
- Tham số đầu tiên là phương thức yêu cầu GET hoặc POST
- Thứ hai là tên tệp từ nơi lấy dữ liệu. Trong trường hợp này dữ liệu. php sẽ được tạo trong bước tiếp theo
- Thứ ba là boolean, cho dù yêu cầu có đồng bộ hay không. đúng cho không đồng bộ. Yêu cầu không đồng bộ không treo trình duyệt. Các yêu cầu được đồng bộ hóa có thể chặn trình duyệt nếu tập lệnh ở dữ liệu. php rất mất thời gian
Bạn cũng có thể gửi tiêu đề với yêu cầu của mình bằng các phương pháp sau
1
Bạn có thể chuyển bao nhiêu tiêu đề tùy thích bằng cách gọi phương thức setRequestHeader nhiều lần
Gọi hàm send[] từ đối tượng ajax để thực sự gọi một yêu cầu AJAX. Nó không chấp nhận tham số nào
2
Đối tượng
var ajax = new XMLHttpRequest[];8 có nhiều chức năng được gọi khi trạng thái của yêu cầu thay đổi. Ví dụ: khi máy chủ nhận được yêu cầu, nếu máy chủ không tồn tại, nếu máy chủ không phản hồi, v.v. Tất cả các cuộc gọi lại này được nhận trong một hàm có tên là onreadystatechange
4
Bây giờ chúng tôi chỉ phải trả lời nếu yêu cầu thành công. Trong hàm onreadystatechange này, chúng ta có 3 biến là readyState, status và responseText
- readyState sẽ có giá trị 4 khi yêu cầu được thực hiện/hoàn thành
- status sẽ có giá trị 200 khi mọi thứ diễn ra suôn sẻ
5
Lấy dữ liệu từ cơ sở dữ liệu MySQL bằng PHP
Bây giờ hãy tạo một tệp mới có tên dữ liệu. php và mở nó trong trình chỉnh sửa mã. Trước tiên, bạn phải kết nối với cơ sở dữ liệu
6
- root là tên của người dùng cơ sở dữ liệu
- Tham số thứ ba là mật khẩu của cơ sở dữ liệu. Đối với XAMPP/WAMP, nó sẽ là một chuỗi rỗng
- classicmodels là tên của cơ sở dữ liệu
Bây giờ, hãy viết truy vấn của bạn để lấy các bản ghi từ cơ sở dữ liệu. Trong trường hợp của tôi, tôi chỉ lấy tất cả nhân viên từ bảng cơ sở dữ liệu có tên là nhân viên
7
Tạo một mảng và lặp qua tất cả các bản ghi cơ sở dữ liệu được trả về từ truy vấn trước đó và lưu các bản ghi đó vào mảng đó
8
Bây giờ, bất cứ điều gì bạn echo sẽ trả về chức năng gọi lại AJAX trong chỉ mục. tệp php. Trong trường hợp là một mảng, bạn phải chuyển đổi mảng thành định dạng JSON, sau đó echo mảng đó
var ajax = new XMLHttpRequest[];0
- exit[]; .
Tại thời điểm này, nếu bạn chạy chỉ mục. php, bạn sẽ thấy tương tự như sau trong bảng điều khiển trình duyệt của mình.
Bây giờ, hãy quay lại chỉ mục. php và chuyển đổi chuỗi JSON này trở lại thành một mảng
var ajax = new XMLHttpRequest[];1
Giờ đây, chuỗi JSON sẽ được chuyển đổi thành một đối tượng Javascript có tên dữ liệu. Nếu bạn chạy chỉ mục. php ngay bây giờ và xem bảng điều khiển trình duyệt, bạn sẽ thấy nội dung tương tự như sau
Hiển thị dữ liệu trong bảng HTML
Bạn đã có dữ liệu, bây giờ bạn chỉ cần thêm nó vào bảng. Tạo một biến chuỗi trống có tên html
var ajax = new XMLHttpRequest[];2
Lặp qua tất cả danh sách nhân viên
var ajax = new XMLHttpRequest[];3
Bên trong vòng lặp, nối thêm dữ liệu vào biến html
var ajax = new XMLHttpRequest[];4
After the loop, append the html variable in
tag:var ajax = new XMLHttpRequest[];5
Bây giờ, chỉ mục của bạn. tệp php sẽ trông như thế này
var ajax = new XMLHttpRequest[];6
Và dữ liệu của bạn. tệp php phải như thế này
var ajax = new XMLHttpRequest[];7
Chạy chỉ mục. php và bạn sẽ thấy dữ liệu của mình sẽ được hiển thị qua AJAX. Vì vậy, đó là cách bạn có thể lấy dữ liệu từ cơ sở dữ liệu bằng AJAX và hiển thị nó trong bảng HTML
Có nhiều
Đây chỉ là để lấy dữ liệu từ cơ sở dữ liệu. Thực hiện theo hướng dẫn này để tìm hiểu thao tác CRUD [Tạo, Đọc, Cập nhật và Xóa] hoàn chỉnh trong AJAX