Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mengubah Hala Pengguna Kembali ke Halaman Sebelumnya Selepas Berjaya Log Masuk?
Apabila pengguna log masuk ke tapak web, selalunya wajar untuk mengubah hala mereka kembali ke halaman yang mereka semak imbas sebelum ini. Ini memberikan pengalaman pengguna yang lancar dan menghapuskan keperluan untuk navigasi manual selepas log masuk.
Untuk mencapai matlamat ini, pendekatan biasa ialah menghantar URL halaman semasa pengguna sebagai pembolehubah $_GET ke borang log masuk. Sebagai contoh, jika pengguna berada di halaman artikel "comment.php?articleid=17" apabila mereka cuba meninggalkan ulasan, URL akan menyertakan lokasi semasa.
Halaman log masuk (login.php) kemudiannya hendaklah menyemak kehadiran $_GET['lokasi']. Jika ia wujud, halaman itu boleh mengubah hala pengguna ke URL khusus tersebut selepas berjaya log masuk. Begini cara anda boleh melaksanakannya:
Dalam log masuk.php:
<code class="php">echo '<input type="hidden" name="location" value="'; if(isset($_GET['location'])) { echo htmlspecialchars($_GET['location']); } echo '" />';</code>
Medan input tersembunyi ini menyimpan URL halaman semasa dan menghantarnya bersama-sama dengan penyerahan borang log masuk.
Dalam login-check.php:
<code class="php">session_start(); $redirect = NULL; if(isset($_POST['location']) && $_POST['location'] != '') { $redirect = $_POST['location']; } if((empty($username) OR empty($password) AND !isset($_SESSION['id_login']))) { $url = 'login.php?p=1'; if(isset($redirect)) { $url .= '&location=' . urlencode($redirect); } header("Location: " . $url); exit(); } elseif (!user_exists($username,$password) AND !isset($_SESSION['id_login'])) { $url = 'login.php?p=2'; if(isset($redirect)) { $url .= '&location=' . urlencode($redirect); } header("Location:" . $url); exit(); } elseif(isset($_SESSION['id_login'])) { if($redirect) { header("Location:". $redirect); } else { header("Location:login.php?p=3"); } exit(); }</code>
Dalam skrip log masuk-check.php ini:
Mekanisme ini membolehkan pengalihan lancar ke halaman yang pengguna semak imbas sebelum log masuk, meningkatkan pengalaman pengguna dan memudahkan proses log masuk.
Atas ialah kandungan terperinci Bagaimana untuk Mengubah Hala Pengguna Kembali ke Halaman Sebelumnya Selepas Berjaya Log Masuk?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!