模板系统

时间:2017-09-04 10:23:54

标签: php html templates redirect error-handling

我有一个'模板'页面,它是我的'index.php',它自动包含所有基本内容,如页眉/页脚和中间:内容页面(它只是一个PHP脚本)。

所以,问题是当包含的脚本(也就是内容)中出现错误时,它会自动重定向到原始路径,而不包含所有索引内容(例如,如果包含'/user/login.php'并且发生错误,它会自动重定向到包含文件的路径,而不是在索引中打印它),如何直接通过索引而不是脚本来捕获错误?

<?php require_once('initializer.inc.php'); //need2be here because of session cache limiter warn ?> <html>
<head>
    <?php
        include('head_data.inc.php');
    ?>
</head>
<body>
    <?php
        include('header.inc.php');
    ?>

    <?php
    $page = 'index.php';
    if(!isset($_GET['page']))
        {
            $page = 'home.inc.php';
        }
        else
        {
            switch($_GET['page'])
            {
                case '':
                    $page = 'home.inc.php';
                    break;

                /**
                 * USER DEPT
                 */
                case 'connexion':
                    $page = 'utilisateur/connexion.inc.php';
                    break;
                case 'moi':
                    $page = 'utilisateur/moi.inc.php';
                    break;

                case 'mdp-oublie':
                    $page = "utilisateur/mot-de-passe-oublie.php";
                    break;

                case 'gateway':
                    $page = 'utilisateur/gateway.inc.php';
                    break;

                case 'panier':
                    $page = 'utilisateur/panier.inc.php';
                    break;

                /*
                 * PRODUCTS DEPT
                 */
                case 'voir':
                    $page = 'produits/voir.inc.php';
                    break;

                case 'categorie':
                    $page = 'produits/categorie.inc.php';
                    break;

                case 'test': //just for debugging
                    $page = 'test.php';
                    break;

                default:
                    echo '<p>404 Not Found - Cette page n\'existe pas</p>';
            }
        }
        include($page);
    ?>

    <?php
        include('footer.inc.php');
    ?>
 </body>

0 个答案:

没有答案