From: Harvie Date: Sun, 28 Nov 2010 22:50:15 +0000 (+0100) Subject: Initial PATH_INFO support (experimental!) X-Git-Url: https://git.harvie.cz/?a=commitdiff_plain;h=822594dc43aa87e2b7bc87bc6110a17884fd6454;p=mirrors%2FKyberia-bloodline.git Initial PATH_INFO support (experimental!) --- 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);