Hướng dẫn redirecting the user in php - chuyển hướng người dùng trong php


Hàm tiêu đề trong PHP có thể được sử dụng để chuyển hướng người dùng từ trang này sang trang khác. Đây là một chức năng được xây dựng mà gửi tiêu đề HTTP RAW đến đích (máy khách).

Cú pháp của hàm tiêu đề

header( $header_value, $replace_value, $http_response_code)

Sau đây là các tham số -

  • ‘Header_Value, trong hàm được sử dụng để lưu trữ chuỗi tiêu đề.
  • Tham số ‘Thay thế_Value lưu trữ giá trị cần được thay thế.
  • ‘Phản hồi_Code, được sử dụng để lưu trữ mã phản hồi HTTP.

Thí dụ

Trang web mà trang cần được chuyển hướng được chỉ định trong hàm tiêu đề.

Hướng dẫn redirecting the user in php - chuyển hướng người dùng trong php

Cập nhật vào ngày 01-tháng 1-2020 07:19:49

  • Câu hỏi và câu trả lời liên quan
  • Chuyển hướng I/O trong C ++
  • Chuyển hướng trang JSP là gì?
  • Cách tạo chuyển hướng 301 trên Nginx và Apache
  • PHP PHP: //
  • Sự khác biệt giữa getType () trong PHP và get_debug_type () trong PHP 8
  • Sắp xếp mảng đa chiều php bằng giá trị phụ trong PHP
  • file_exists () hàm trong PHP
  • hàm basename () trong PHP
  • hàm chgrp () trong PHP
  • hàm chmod () trong PHP
  • Chức năng Chown () trong PHP
  • clearstatcache () hàm trong PHP
  • Copy () hàm trong PHP
  • Hàm xóa () trong PHP
  • hàm dirname () trong PHP

Chuyển hướng cho phép bạn chuyển hướng trình duyệt khách đến một URL khác. Bạn có thể sử dụng nó khi bạn chuyển đổi tên miền, thay đổi cách cấu trúc trang web của bạn hoặc chuyển sang HTTPS.

Trong bài viết này, tôi sẽ chỉ cho bạn cách chuyển hướng đến một trang khác với PHP. Tôi sẽ giải thích chính xác cách chuyển hướng PHP hoạt động và cho bạn thấy những gì xảy ra đằng sau hậu trường.

Tìm hiểu PHP với một khóa học trực tuyến miễn phí

Nếu bạn muốn học PHP, hãy xem khóa học trực tuyến miễn phí của chúng tôi về các nguyên tắc cơ bản của PHP!

Chuyển hướng cơ bản hoạt động như thế nào?

Trước khi chúng tôi đi sâu vào các chi tiết cụ thể của chuyển hướng PHP, hãy để nhanh chóng hiểu chính xác cách chuyển hướng HTTP hoạt động. Hãy xem sơ đồ sau.

Hướng dẫn redirecting the user in php - chuyển hướng người dùng trong php
Hướng dẫn redirecting the user in php - chuyển hướng người dùng trong php
Hướng dẫn redirecting the user in php - chuyển hướng người dùng trong php

Hãy để hiểu về những gì diễn ra trong ảnh chụp màn hình trên:

  • Trình duyệt máy khách yêu cầu một trang cụ thể từ máy chủ. Trong ví dụ trên, máy khách đã yêu cầu nội dung của tệp index.php.index.php file.
  • Máy chủ nhận được yêu cầu tệp index.php và muốn thông báo cho khách hàng rằng nó không còn có sẵn hoặc di chuyển ở một nơi khác, và nó nên tìm đến một tệp mới thay thế: new_index.php. Máy chủ gửi tiêu đề Location với URL mới cùng với mã HTTP 301 hoặc 302. Đây là các mã HTTP để chuyển hướng.index.php file request and wants to inform the client that it’s no longer available or moved somewhere else, and it should look to a new file instead: new_index.php. The server sends the Location header with a new URL along with the 301 or 302 HTTP code. These are the HTTP codes for redirection.
  • Khi một trình duyệt máy khách gặp mã 301 hoặc 302, nó biết rằng nó phải bắt đầu một yêu cầu khác cho một URL mới để tìm nạp nội dung. Nó bắt đầu một yêu cầu tìm nạp tệp new_index.php trong ví dụ trên.
  • Cuối cùng, một máy chủ gửi nội dung của URL mới.

Vì vậy, cách mà một chuyển hướng HTTP cơ bản hoạt động. Trong phần tiếp theo, chúng tôi sẽ thảo luận về cách chuyển hướng PHP hoạt động.

Cách chuyển hướng hoạt động trong PHP

Trong PHP, khi bạn muốn chuyển hướng người dùng từ trang này sang trang khác, bạn cần sử dụng chức năng header(). Hàm tiêu đề cho phép bạn gửi tiêu đề vị trí HTTP thô, thực hiện chuyển hướng thực tế như chúng ta đã thảo luận trong phần trước.

Cách sử dụng hàm tiêu đề

Chúng ta hãy đi qua cú pháp của hàm header().

header( $header, $replace, $http_response_code )
  • $header: Đây là chuỗi tiêu đề HTTP mà bạn muốn sử dụng. Trong trường hợp của chúng tôi, chúng tôi sẽ sử dụng tiêu đề Location để chuyển hướng.
  • 1: Nó có một tham số tùy chọn cho biết liệu tiêu đề có nên thay thế một tiêu đề tương tự trước đó hay không.
  • 2: Nó cho phép bạn gửi mã phản hồi cụ thể.

Bây giờ, hãy để một cái nhìn vào ví dụ sau để hiểu cách tất cả hoạt động cùng nhau.

Khi tập lệnh trên được thực thi, nó sẽ chuyển hướng trình duyệt khách đến http://www.yoursite.com/new_index.php. Trong nền, nó gửi tiêu đề HTTP Location RAW cùng với mã trạng thái 302. Mã trạng thái 302 được sử dụng để chuyển hướng tạm thời, nhưng nếu bạn muốn chuyển hướng vĩnh viễn, bạn có thể chuyển mã 301 trong đối số thứ ba, như được hiển thị trong đoạn trích sau.

Chuyển hướng vĩnh viễn 301 cho phép bạn thông báo cho các bot tìm kiếm rằng trang không còn nữa và nó có thể được thay thế bằng một trang mới.

Tại sao bạn nên sử dụng hàm 4 hoặc 5 sau khi chuyển hướng tiêu đề?

Người dùng có đôi mắt sắc bén sẽ nhận thấy rằng tôi đã sử dụng chức năng

6 trong ví dụ trên. Trên thực tế, bắt buộc bạn sử dụng chức năng 
6 hoặc 
8 ngay sau khi chuyển hướng tiêu đề để dừng thực thi tập lệnh và tránh mọi kết quả không mong muốn.

Vì vậy, nó luôn luôn khuyến nghị thực hành để sử dụng một trong những chức năng này sau khi chuyển hướng.

Lỗi nổi tiếng: Tiêu đề đã được gửi

Nếu bạn là một lập trình viên PHP có kinh nghiệm, tôi chắc chắn rằng bạn đã gặp phải lỗi PHP nổi tiếng này vào một lúc nào đó trong sự phát triển PHP hàng ngày của bạn. Tuy nhiên, đối với người mới bắt đầu, việc gặp phải lỗi này thực sự rất khó chịu, vì nó rất khó để gỡ lỗi và sửa chữa. Trong hầu hết các trường hợp, họ không có một manh mối nào mà nó gây ra bởi sự chuyển hướng tiêu đề.

Quy tắc của ngón tay cái là khi bạn sử dụng hàm header() trong tập lệnh của mình, bạn cần đảm bảo rằng bạn không gửi bất kỳ đầu ra nào trước nó. Nếu không, PHP sẽ phàn nàn với lỗi "Tiêu đề đã được gửi". Điều này có thể xảy ra ngay cả khi bạn đã gửi một khoảng trắng duy nhất trước khi sử dụng chức năng tiêu đề.

Sự kết luận

Trong bài đăng này, chúng tôi đã thảo luận về một trong những tính năng quan trọng của lập trình PHP: chuyển hướng. Đầu tiên, chúng tôi đã trải qua những điều cơ bản của chuyển hướng HTTP, và sau đó tôi đã chứng minh cách nó hoạt động trong PHP.

Các tập lệnh PHP tốt nhất trên Codecanyon

Khám phá hàng ngàn tập lệnh PHP tốt nhất và hữu ích nhất từng được tạo trên Codecanyon. Với khoản thanh toán một lần chi phí thấp, bạn có thể mua một trong những chủ đề WordPress chất lượng cao này và cải thiện trải nghiệm trang web của bạn cho bạn và khách truy cập của bạn.

Hướng dẫn redirecting the user in php - chuyển hướng người dùng trong php
Hướng dẫn redirecting the user in php - chuyển hướng người dùng trong php
Hướng dẫn redirecting the user in php - chuyển hướng người dùng trong php

Dưới đây là một vài trong số các tập lệnh PHP bán chạy nhất và sắp tới có sẵn trên Codecanyon cho năm 2020.

Bạn có thấy bài đăng này hữu ích?

Hướng dẫn redirecting the user in php - chuyển hướng người dùng trong php

Kỹ sư phần mềm, FSPL, Ấn Độ

Tôi là một kỹ sư phần mềm chuyên nghiệp, và tôi đã thực hiện kỹ thuật khoa học máy tính. Đã khoảng 14 năm tôi đã làm việc trong lĩnh vực phát triển trang web và công nghệ nguồn mở. Chủ yếu, tôi làm việc trên các dự án và khung dựa trên PHP và MySQL. Trong số đó, tôi đã làm việc trên các khung web như Codeignitor, Symfony và Laravel. Ngoài ra, tôi cũng có cơ hội làm việc trên các hệ thống CMS khác nhau như Joomla, Drupal và WordPress và các hệ thống thương mại điện tử như Magento, Opencart, WooC Commerce và Drupal Commerce. Tôi cũng muốn tham dự các hội nghị công nghệ cộng đồng, và là một phần của điều đó, tôi đã tham dự Hội nghị Thế giới Joomla 2016 được tổ chức tại Bangalore (Ấn Độ) và 2018 Drupalcon được tổ chức tại Mumbai (Ấn Độ). Ngoài ra, tôi thích đi du lịch, khám phá những địa điểm mới và nghe nhạc!

Chức năng nào trong PHP được sử dụng để chuyển hướng từ trang này sang trang khác?

Chuyển hướng trong PHP có thể được thực hiện bằng hàm tiêu đề ().header() function.

Làm cách nào để chuyển hướng đến một trang khác sau khi đăng nhập?

Bước 1: Tạo chủ đề trẻ em. ....
Bước 2: Sao chép mã trong hàm của chủ đề con. ....
Bước 3: Lưu mã và kiểm tra bằng cách đăng nhập với tư cách là khách hàng. ....
Bước 1: Cài đặt plugin Frontend của người dùng WP. ....
Bước 2: Chọn trang chuyển hướng hoặc bất kỳ trang tùy chỉnh nào. ....
Bước 3: Lưu cấu hình và thưởng thức !.

Chức năng nào được sử dụng để chuyển hướng ai đó đến một trang khác?

Cách tiếp cận: Để chuyển hướng từ trang HTML sang trang khác, bạn có thể sử dụng thẻ bằng cách chỉ định liên kết cụ thể trong thuộc tính URL.Đó là chuyển hướng phía máy khách, trình duyệt yêu cầu máy chủ cung cấp một trang khác. tag by specifying the particular link in the URL attribute. It is the client-side redirection, the browsers request the server to provide another page.

Làm thế nào chuyển hướng cùng một trang sau khi gửi trong PHP?

Bạn nên chuyển hướng với một tiêu đề vị trí sau mỗi bài đăng, bởi vì nếu không, khi người dùng nhấn nút làm mới, nó sẽ gửi lại cùng một biểu mẫu ... BTW.Nếu bạn muốn làm công việc thích hợp, bạn nên thử một khung PHP thay vì loại mã spaghetti này ...