返回列表 上一主題 發帖

5-4-1 網頁轉向

5-4-1 網頁轉向

5-4-1   網頁轉向
網頁資訊「Location」可轉向其他網頁或網址,這個方法也就所謂的『自動鏈結』:
header(“Locatiom: 欲前往的網址”);
例如:
  1. <?
  2. //載入網頁後,自動轉接鍊結至與主網頁同一目錄中的message.htm網頁
  3. header("Location: message.htm");
  4. //載入主網頁後,自動轉接鍊結至主網頁上一層目錄中的ex04_01.asp網頁
  5. header("Location: ../ch4/ex04_01.php");
  6. //載入主網頁後,自動轉接鍊結至與另一網址中的網頁
  7. header("Location: http://www.twbts.com");
  8. ?>
複製代碼
header()函數只可用在尚未有任何資料輸出至瀏覽器之前才可呼叫。尚未有任何資料輸出至瀏覽器之前才可呼叫?這是什麼意思?就是在程式開端符號『<?』之前都不能有任何資料啦!如下例:(範例ex05_10.php)
  1. <html><body>
  2. <%
  3. Response.Redirect "message.htm"
  4. %>
  5. </body>
  6. </html>
複製代碼
上例結果將會獲得下圖的錯誤訊息:
0.png
2011-4-19 09:39

圖5-15  範例ex05_16.php。
心安,平安   
發表任何無意義的感謝或灌水文章一律砍,珍惜帳號,請詳閱版規!!

實做學習
在留言板範例中(go2php,message2.htm),若表單中的任一欄位沒有填寫資料都會顯示「姓名或email或留言,任何一欄位不可為空白,請重新輸入」,然後結束程式的執行,我們現在將錯誤訊息的顯示更改為「自動轉向到輸入表單的網頁」:(範例goredirect.php配合redirect.htm)
  1. …略
  2. if ($name=="" || $email=="" || $memo=="")
  3. {
  4.   header("Location: redirect.htm");
  5. }
  6. else…略
複製代碼
心安,平安   
發表任何無意義的感謝或灌水文章一律砍,珍惜帳號,請詳閱版規!!

TOP

  1. <?
  2. //載入網頁後,自動轉接鍊結至與主網頁同一目錄中的message.htm網頁
  3. header("Location: message.htm");
  4. //載入主網頁後,自動轉接鍊結至主網頁上一層目錄中的ex04_01.php網頁
  5. header("Location: ../ch4/ex04_01.php");
  6. //載入主網頁後,自動轉接鍊結至與另一網址中的網頁
  7. header("Location: http://www.twbts.com");
  8. ?>
複製代碼

TOP

        靜思自在 : 手心向下是助人,手心向上是求人;助人快樂,求人痛苦。
返回列表 上一主題