Cách chuyển tham số truy vấn trong url trong php?
Đã đến lúc cung cấp cho mỗi thú cưng trang riêng của chúng. Ở giai đoạn này, một trang mới có nghĩa là một tệp mới - vì vậy hãy tạo một chương trình. php và sao chép trong các câu lệnh yêu cầu cho các chức năng. php, đầu trang và chân trang Show Display 1 pet Mẹo Cuối cùng, chúng ta sẽ tìm hiểu một chiến lược gọi là "định tuyến" giúp tạo các trang mới dễ dàng hơn và cung cấp cho bạn rất nhiều quyền kiểm soát đối với giao diện URL của bạn Mỗi trang theo một khuôn mẫu quen thuộc. chúng tôi thực hiện một số công việc ở trên cùng - như truy vấn cơ sở dữ liệu - và sau đó chúng tôi sử dụng các biến mà chúng tôi đã tạo trong phần còn lại của HTML để in mọi thứ. Ở đây, “công việc” của chúng ta sẽ là truy vấn duy nhất một thú cưng trong cơ sở dữ liệu Nhưng trước tiên, hãy tạo một liên kết từ mỗi thú cưng trên trang chủ đến tệp này. Để cho trang biết chúng ta muốn hiển thị thú cưng nào, hãy thêm ?id= vào cuối URL và in ra id của thú cưng này Làm mới và nhấp vào liên kết. Chúng tôi được đưa đến trang mới với một phần ?id= nhỏ trên URL. Đó được gọi là tham số truy vấn và đó là cách dễ nhất để chuyển một số dữ liệu bổ sung vào một trang Sử dụng tham số truy vấnYêu cầu HTTP đến máy chủ hiện chứa một ít thông tin bổ sung thông qua tham số truy vấn này. Vậy làm thế nào chúng ta có thể đọc điều này trong PHP? . Chúng tôi đã sử dụng $_POST để nhận dữ liệu được gửi trong biểu mẫu và $_SERVER để tìm hiểu xem đây là yêu cầu GET hay POST Các tham số truy vấn được truy cập thông qua $_GET superglobal. Hãy kết xuất toàn bộ biến này Cũng giống như các siêu toàn cầu khác, đây là một mảng kết hợp. Chúng tôi có thể thêm nhiều giá trị hơn trong URL bằng cách thêm dấu & giữa mỗi Bây giờ $_GET có 3 mục trong đó Mẹo Tham số truy vấn luôn bắt đầu bằng dấu ? Vì vậy, hãy lấy khóa id từ $_GET Bạn biết khoan từ đây. Chúng tôi sẽ truy vấn cơ sở dữ liệu cho một con vật cưng này và sử dụng thông tin đó để xây dựng trang. Nhưng đợi đã. Chúng ta nên xây dựng truy vấn ngay tại đây hay đặt nó trong một hàm? . một chức năng sẽ giúp giữ mọi thứ ngăn nắp. Gọi một hàm get_pet() tưởng tượng và chuyển cho nó $id Và trước khi chúng ta nghĩ đến việc tạo hàm đó, chúng ta đã biết nó sẽ trả về cái gì. một mảng kết hợp với các chi tiết cho chỉ một con vật cưng. Hãy xây dựng trang này với suy nghĩ đó. Để tiết kiệm một số thao tác gõ, tôi đã bắt đầu tệp này trong phần tải xuống mã tại resource/episode3/show. php. Tôi sẽ sao chép nội dung của nó vào giữa trang này và điền vào một số phần còn thiếu PHP bao gồm phương thức http_build_query() để tạo chuỗi truy vấn được mã hóa URL. Phương pháp này chỉ khả dụng trên các phiên bản PHP 5 trở lên. Trong đoạn mã này, bạn sẽ tìm hiểu cách chuyển một mảng trong chuỗi truy vấn URL bằng PHP Cú pháp của http_build_query() sẽ như sau
Trong phần này, chúng ta sẽ sử dụng mảng $vars để tạo chuỗi truy vấn URL. Mảng $vars bao gồm dữ liệu của từ khóa tìm kiếm, cũng như số trang Hãy xem một ví dụ trong đó mảng này được chuyển đến phương thức http_build_query() để tạo chuỗi truy vấn
Mã được trình bày ở trên sẽ trả về chuỗi truy vấn url sau Bây giờ, hãy xem một ví dụ trong đó $vars là một mảng được lập chỉ mục bao gồm dữ liệu nhân viên
Đoạn mã trên sẽ trả về chuỗi truy vấn url sau Trong phần này, chúng ta sẽ coi $vars là một mảng đa chiều với dữ liệu nhân viên. Khi đi qua phương thức http_build_query(), nó sẽ trả về một chuỗi truy vấn url phức tạp Đây là một ví dụ
Mã này sẽ trả về chuỗi truy vấn url sau Thuật ngữ chuỗi truy vấn được coi là một phần của Bộ định vị tài nguyên thống nhất (URL). Nó ở dạng một loạt các cặp khóa-giá trị. Nói chung, nó được sử dụng để tạo một url điển hình hoặc lấy dữ liệu từ URL Vì vậy, bạn có thể sử dụng chuỗi truy vấn cho các mục đích khác nhau, chẳng hạn như từ khóa tìm kiếm, xây dựng url, theo dõi trang web cụ thể, v.v. Một mảng kết hợp gồm các biến được chuyển đến tập lệnh hiện tại thông qua các tham số URL (còn gọi là. chuỗi truy vấn). Lưu ý rằng mảng không chỉ được điền cho các yêu cầu GET mà còn cho tất cả các yêu cầu có chuỗi truy vấn ví dụVí dụ #1 $_GET ví dụ
Giả sử người dùng đã nhập http. //ví dụ. com/?name=Hannes Ví dụ trên sẽ xuất ra một cái gì đó tương tự như ghi chú
|