From 822594dc43aa87e2b7bc87bc6110a17884fd6454 Mon Sep 17 00:00:00 2001 From: Harvie Date: Sun, 28 Nov 2010 23:50:15 +0100 Subject: [PATCH] Initial PATH_INFO support (experimental!) --- wwwroot/nodes.php | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/wwwroot/nodes.php b/wwwroot/nodes.php index 5da4069..69e867d 100644 --- a/wwwroot/nodes.php +++ b/wwwroot/nodes.php @@ -28,6 +28,23 @@ if ($_SESSION['debugging']) { print_r($_SESSION); } + +//Path info (Experimental - thish should replace most of mod_rewrites in future...) +@$PATH_INFO=trim($_SERVER[PATH_INFO]); +if($PATH_INFO != '') { + $PATH_CHUNKS = preg_split("/\//", $PATH_INFO); + switch($PATH_CHUNKS[1]) { + case 'k': + if(isset($PATH_CHUNKS[2]) && $PATH_CHUNKS[2] != '') $_GET['node_kid'] = $PATH_CHUNKS[2]; + if(isset($PATH_CHUNKS[3]) && $PATH_CHUNKS[3] != '') $_GET['template_kid'] = $PATH_CHUNKS[3]; + break; + case 'id': + if(isset($PATH_CHUNKS[2]) && $PATH_CHUNKS[2] != '') $_GET['node_id'] = $PATH_CHUNKS[2]; + if(isset($PATH_CHUNKS[3]) && $PATH_CHUNKS[3] != '') $_GET['template_id'] = $PATH_CHUNKS[3]; + break; + } +} + //Base36 http://en.wikipedia.org/wiki/Base_36 (Initial support only :-) if(isset($_GET['node_kid'])) $_GET['node_id'] = base_convert($_GET['node_kid'], 36, 10); if(isset($_GET['template_kid'])) $_GET['template_id'] = base_convert($_GET['template_kid'], 36, 10); -- 2.30.2