CodeIgniter - การเปลี่ยนเส้นทางหน้า

ในขณะที่สร้างเว็บแอปพลิเคชันเรามักจะต้องเปลี่ยนเส้นทางผู้ใช้จากหน้าหนึ่งไปยังอีกหน้าหนึ่ง CodeIgniter ทำให้งานนี้ง่ายสำหรับเรา redirect() ฟังก์ชันถูกใช้เพื่อจุดประสงค์นี้

Syntax

เปลี่ยนเส้นทาง ( $ uri = '', $ method = 'auto', $ code = NULL )

Parameters

  • $uri( สตริง ) - สตริง URI

  • $method( สตริง ) - วิธีการเปลี่ยนเส้นทาง ('auto', 'location' หรือ 'refresh')

  • $code( สตริง ) - รหัสตอบกลับ HTTP (โดยปกติคือ 302 หรือ 303)

Return type

เป็นโมฆะ

อาร์กิวเมนต์แรกสามารถมี URI ได้สองประเภท เราสามารถส่ง URL ของไซต์แบบเต็มหรือส่วน URI ไปยังตัวควบคุมที่คุณต้องการกำหนดได้

พารามิเตอร์ทางเลือกที่สองสามารถมีค่าใดก็ได้จากสามค่าจากอัตโนมัติตำแหน่งหรือรีเฟรช ค่าเริ่มต้นคืออัตโนมัติ

พารามิเตอร์ทางเลือกที่สามมีให้เฉพาะกับการเปลี่ยนเส้นทางตำแหน่งและอนุญาตให้คุณส่งรหัสตอบกลับ HTTP เฉพาะ

ตัวอย่าง

สร้างตัวควบคุมที่เรียกว่า Redirect_controller.php และบันทึกไว้ใน application/controller/Redirect_controller.php

<?php 
   class Redirect_controller extends CI_Controller { 
	
      public function index() { 
         /*Load the URL helper*/ 
         $this->load->helper('url'); 
   
         /*Redirect the user to some site*/ 
         redirect('http://www.tutorialspoint.com'); 
      }
		
      public function computer_graphics() { 
         /*Load the URL helper*/ 
         $this->load->helper('url'); 
         redirect('http://www.tutorialspoint.com/computer_graphics/index.htm'); 
      } 
  
      public function version2() { 
         /*Load the URL helper*/ 
         $this->load->helper('url'); 
   
         /*Redirect the user to some internal controller’s method*/ 
         redirect('redirect/computer_graphics'); 
      } 
		
   } 
?>

เปลี่ยน routes.php ไฟล์ใน application/config/routes.php เพื่อเพิ่มเส้นทางสำหรับคอนโทรลเลอร์ด้านบนและเพิ่มบรรทัดต่อไปนี้ที่ท้ายไฟล์

$route['redirect'] = 'Redirect_controller'; 
$route['redirect/version2'] = 'Redirect_controller/version2'; 
$route['redirect/computer_graphics'] = 'Redirect_controller/computer_graphics';

พิมพ์ URL ต่อไปนี้ในเบราว์เซอร์เพื่อดำเนินการตามตัวอย่าง

http://yoursite.com/index.php/redirect

URL ด้านบนจะเปลี่ยนเส้นทางคุณไปยังเว็บไซต์ tutorialspoint.com และหากคุณไปที่ URL ต่อไปนี้ระบบจะเปลี่ยนเส้นทางคุณไปยังบทแนะนำเกี่ยวกับคอมพิวเตอร์กราฟิกที่ tutorialspoint.com

http://yoursite.com/index.php/redirect/computer_graphics