![]() ![]() |
is |
Subversion Repositories: |
Compare with Previous - Blame - Download
<?php/* $Id: grab_globals.lib.php,v 2.12 2005/08/14 19:31:55 lem9 Exp $ */// vim: expandtab sw=4 ts=4 sts=4:/*** This library grabs the names and values of the variables sent or posted to a* script in the $_* arrays and sets simple globals variables from them. It does* the same work for the $PHP_SELF, $HTTP_ACCEPT_LANGUAGE and* $HTTP_AUTHORIZATION variables.** loic1 - 2001/25/11: use the new globals arrays defined with php 4.1+*/include ("config.php");function sanitize($input){$output="";if(is_array($input)){foreach($input as $k=>$i){$output[$k]=sanitize($i);}}else{if(get_magic_quotes_gpc()){$input=stripslashes($input);}$output=addslashes($input);# echo "$input san $output<br>";}return $output;}$_POST=sanitize($_POST);$_GET=sanitize($_GET);$_COOKIE=sanitize($_COOKIE);$_REQUEST=sanitize($_REQUEST);foreach ($_POST as $var => $value) {${"$var"}=$value;}foreach ($_GET as $var => $value) {${"$var"}=$value;}// check if a subform is submitted$__redirect = NULL;if ( isset( $_POST['usesubform'] ) ) {// if a subform is present and should be used// the rest of the form is deprecated$subform_id = key( $_POST['usesubform'] );$subform = $_POST['subform'][$subform_id];$_POST = $subform;if ( isset( $_POST['redirect'] )&& $_POST['redirect'] != basename( $_SERVER['PHP_SELF'] ) ) {$__redirect = $_POST['redirect'];unset( $_POST['redirect'] );} // end if ( isset( $_POST['redirect'] ) )} // end if ( isset( $_POST['usesubform'] ) )// end check if a subform is submittedif (!empty($_FILES)) {foreach ($_FILES AS $name => $value) {$$name = $value['tmp_name'];${$name . '_name'} = $value['name'];}} // end ifif (!empty($_SERVER)) {$server_vars = array('PHP_SELF', 'HTTP_ACCEPT_LANGUAGE', 'HTTP_AUTHORIZATION');foreach ($server_vars as $current) {if (isset($_SERVER[$current])) {$$current = $_SERVER[$current];} elseif (!isset($$current)) {$$current = '';}}unset($server_vars, $current);} // end if// Security fix: disallow accessing serious server files via "?goto="if (isset($goto) && strpos(' ' . $goto, '/') > 0 && substr($goto, 0, 2) != './') {unset($goto);} // end ifif ( ! empty( $__redirect ) ) {require('./' . $__redirect);exit();} // end if ( ! empty( $__redirect ) )?>