route : Add an error management in all the cases of routing. It is possible to use an external error page too.
git-svn-id: https://svn.fournier38.fr/svn/ProgSVN/trunk@1827 bf3deb0d-5f1a-0410-827f-c0cc1f45334c
This commit is contained in:
23
route.php
23
route.php
@@ -562,10 +562,7 @@ class route
|
|||||||
}
|
}
|
||||||
catch (Exception $e)
|
catch (Exception $e)
|
||||||
{
|
{
|
||||||
@header ($_SERVER["SERVER_PROTOCOL"]." 500 Internal Server Error");
|
$this->error ($e);
|
||||||
// TODO : Allow a specific page to be configured and displayed
|
|
||||||
echo "<H1>Internal server error</h1>";
|
|
||||||
echo $e->getMessage();
|
|
||||||
}
|
}
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
@@ -598,6 +595,19 @@ class route
|
|||||||
call_user_func_array ($function, $params);
|
call_user_func_array ($function, $params);
|
||||||
}
|
}
|
||||||
catch (Exception $e)
|
catch (Exception $e)
|
||||||
|
{
|
||||||
|
$this->error ($e);
|
||||||
|
}
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($this->debug)
|
||||||
|
echo "==> NO MATCH\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Print an error page. If a custom page exists, use it
|
||||||
|
@param $e Exception to print */
|
||||||
|
public function error ($e)
|
||||||
{
|
{
|
||||||
if ($e->getCode () === "")
|
if ($e->getCode () === "")
|
||||||
$getCode = 500;
|
$getCode = 500;
|
||||||
@@ -635,11 +645,6 @@ class route
|
|||||||
echo $e->getMessage();
|
echo $e->getMessage();
|
||||||
echo" </body>\n";
|
echo" </body>\n";
|
||||||
echo "</html>\n";
|
echo "</html>\n";
|
||||||
}
|
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($this->debug)
|
|
||||||
echo "==> NO MATCH\n";
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user