• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    PHP出錯界面

    發布: 2007-7-14 19:53 | 作者: 佚名    | 來源: 網絡轉載     | 查看: 8次 | 進入軟件測試論壇討論

    領測軟件測試網


      在web 上所有常見的錯誤之一就是無效的鏈接。一旦從其它站點上出現了無效的鏈接,你會重新安排你的站點。人們會將他們喜歡的站點存成書簽,如果在三個月后再次訪問時,僅僅發現的是'404 Not Fount ' 時,將不會給他們任務幫助,告訴他們如何從你的站點去查找原始的信息。讓我們解決這個問題,或者至少給你的用戶一個友好的幫助,一旦他們遇到'a 404' 錯誤時,能夠得到一些痕跡。你可以創建普通的頁面來報告在處理你的頁面時所遇到的所有的錯誤。

      PHP 與Apache一起可以很自由地讓你創建自已的出錯頁面,但是需要重新進行配置,并且要編少量的代碼。先讓我們學習配置部分。

      Apache的ErrorDocument指示用來指出在出現錯誤時Apache應重定向到哪一個文檔(或URI)。它允許你為每一個你的用戶可能遇到的錯誤代碼指定一個資源。通過在你的服務器配置中增加一個ErrorDocument 404 /error.php指示。這個將在用戶訪問一個不存在的頁面時,重定向到'error.php'中,下面我們就會寫出 'error.php'頁面。不要忘了重新啟動Apache以使改動生效。

      接著,我們寫出一個簡單的error.php:

    你所請求的文件 (<?=$REDIRECT_URL?> ) 在這個服務器上不存在。
    請查找你想要的文件從 <A HREF="/">前頁</A>。

      現在試著讀取一個在你服務器上不存在的頁面,怎么樣,你可以看到error.php了,它有著一個良好和友好的消息,并且還有一個到前頁的鏈接。

      讓我們把它擴展一下。正如你所見,我在error.php中使用了REDIRECT_URL變量。這個變量是Apache在執行了一個ErrorDocument指示時所設置的,并且給出了一種可能來找到原始的資源。在這種情況下,Apache 還設置了一些別的變量,所有的變量可以在這里找到。使用這些變量可能創建一個很好的出錯頁面,用于給用戶一個不錯與友好的出錯頁面,而代替Apache給出的缺省頁面。

    從PHP頁面中輸出錯誤
       從一個PHP頁面輸出錯誤與模擬Apache對ErrorDocument指示所做的很象,你只要簡單地將用戶重定向,通過使用query-string變量,而Apache則通常是設置在環境變量里面。這樣就可以使用同一個出錯頁面來處理各種錯誤。下面是一個例子:

     

    <?php

    function throw_error($message) {
    $error_page = "/err/error.php";

    $error_url = $error_page;
    $error_url .= "?REDIRECT_ERROR_NOTES=$message";
    $error_url .= "&REDIRECT_URL=" . $GLOBALS["PHP_SELF"];
    $error_url .= "&REDIRECT_REQUEST_METHOD=$REQUEST_METHOD";
    $error_url .= "&REDIRECT_STATUS=501";
    Header("Status: 501");
    Header("Location: $error_url");
    exit;
    }

    ob_start();
    // 使用輸出緩沖以便在這頁中的任何地方輸出錯誤

    if(!condition) {
    throw_error("the condition failed");
    }

    ob_end_flush();
    // 頁面處理完畢,刷新輸出緩沖
    ?>
    使用PHP4的輸出緩沖特性對生成一般的出錯報告功能也會有幫助。但是在你確認整個出錯頁面處理完畢時,不要忘記刷新緩沖區,你可以在你的代碼中的任可地方通過Header調用來進行重定向。

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>