❶ 怎樣進行網頁重定向
網頁重定向就是將用戶請求的網頁轉向其它位置。即當用戶訪問某個網頁A時,網頁A自動定向到網頁B,這樣用戶實際看到的就是網頁B了。
網頁重定向在網站開發中經常使用,如:
1) 公司的域名進行了變更,為了用戶也能通過原有域名進行訪問,就得使用重定向。常見的購物網站,好多都進行了域名變更,但原域名仍保留,輸入原域名後,自動定向到新的域名。
2) 在用戶登錄頁面A中,輸入完用戶名密碼後,點擊登錄時,表單提交到驗證網頁B,在服務端進行驗證通過後,會自動定向到用戶信息網頁C。
下面介紹幾種網頁重定向的幾種常用方法。
通過javascript腳本進行重定向
1
將a.html提交到b.html,b.html重定向到c.html。
(a.html相當於用戶登錄網頁,b.html相當於驗證用戶信息網頁,c.html相當於重定向的網頁)
這里演示的僅是重定向的功能,因此代碼盡可能簡單。
a.html內容如下:
<html>
<head>
<metahttp-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
<form action="b.html"method="post">
<input name = "submit"type="submit" value="提交">
</form>
</body>
</html>
預覽圖如下:
2
b.html內容如下:
<html>
<head>
<metahttp-equiv="Content-Type" content="text/html;charset=utf-8" />
<scripttype="text/javascript">
function load()
{
window.location ="c.html";
}
</script>
</head>
<body onload = "load()">
驗證通過,現在進入用戶信息頁面。
</body>
</html>
3
c.html內容如下:
<html>
<head>
<metahttp-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
歡迎光臨!
</body>
</html>
預覽圖如下:
4
重點在b.html,重定向的代碼就在其中的javascript腳本load()函數中。在b網頁載入完畢後,會調用此函數,此函數的重定向代碼就一句:
window.location = "c.html";
怎麼樣?是不是很簡單。
如果想定向前其它網頁,如網路首頁,可以這么寫:
window.location=」http://www..com」;
注意「http://」不能少。
END
通過php代碼進行重定向
1
因為涉及到php代碼的執行,因此需要先做一個網站,這里假定網站已做好。
a.html中的代碼很簡單,只需將上面的form中的action改為指定b.php而不是b.html即可。
b.php的代碼如下:
<?phpheader("Location:c.html"); ?>
要在本地網站進行演示,可以將a.html、b.php、c.html拷貝到你的網站目錄下,在瀏覽器地址欄中輸入: localhost/a.html進行操作。
END
通過asp.net代碼進行重定向
1
代碼和php類似,因要先做一個支持asp.net運行的網站,將a.html中的action指定b.aspx,b.aspx中的代碼如下:
<% Server.Transfer("c.html"); %>
END
通過jsp代碼進行重定向
代碼和php類似,因要先做一個支持jsp運行的網站,重定向代碼如下:
<jsp:forward page="c.html">
❷ thinkphp如何根據域名跳轉到其他目錄頁面
ThinkPHP redirect 方法可以實現頁面的重定向(跳轉)功能。
redirect 方法語法如下:
$this->redirect(string url, array params, int delay, string msg)
參數說明:
參數
說明
url
必須,重定向的 URL 表達式。
params
可選,其它URL參數。
delay
可選, 重定向延時,單位為秒。
msg
可選,重定向提示信息。
ThinkPHP redirect 實例
在 Index 模塊 index 方法中,重定向到本模塊的 select 操作:
classIndexActionextendsAction{
publicfunctionindex(){
$this->redirect('select',array('status'=>1),3,'頁面跳轉中~');
}
}
//不延時,直接重定向
$this->redirect('select',array('status'=>1));
//延時跳轉,但不帶參數,輸出默認提示
$this->redirect('select','',3);
//重定向到其他模塊操作
$this->redirect('Public/login');
//重定向到其他分組
$this->redirect('Admin-Public/login');
❸ tp5 php 登錄後 無法轉跳顯示用戶名,需要刷新才能顯示,怎麼才能解決
你存儲在session里就要在視圖層判斷session是否存在。
<?php
if(empty(session('xxx'))){?>
//未登錄
<?php}else{?>
//已登錄
<?php}?>