Created
November 12, 2012 06:20
-
-
Save allen501pc/4057800 to your computer and use it in GitHub Desktop.
function PMA_generate_common_url ($db = '', $table = '', $delim = '&')
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
function PMA_generate_common_url ($db = '', $table = '', $delim = '&') | |
{ | |
if (is_array($db)) { | |
$params =& $db; | |
$delim = empty($table) ? $delim : $table; | |
$questionmark = '?'; | |
} else { | |
$params = array(); | |
if (strlen($db)) { | |
$params['db'] = $db; | |
} | |
if (strlen($table)) { | |
$params['table'] = $table; | |
} | |
$questionmark = ''; | |
} | |
// use seperators defined by php, but prefer ';' | |
// as recommended by W3C | |
$separator = PMA_get_arg_separator(); | |
// check wether to htmlentity the separator or not | |
if ($delim === '&') { | |
/* Allen: do not affect $delim variable. */ | |
// $delim = htmlentities($delim); | |
} else { | |
$delim = $separator; | |
} | |
if (isset($GLOBALS['server']) | |
&& $GLOBALS['server'] != $GLOBALS['cfg']['ServerDefault']) { | |
$params['server'] = $GLOBALS['server']; | |
} | |
if (empty($_COOKIE['pma_lang']) | |
&& ! empty($GLOBALS['lang'])) { | |
$params['lang'] = $GLOBALS['lang']; | |
} | |
if (empty($_COOKIE['pma_charset']) | |
&& ! empty($GLOBALS['convcharset'])) { | |
$params['convcharset'] = $GLOBALS['convcharset']; | |
} | |
if (empty($_COOKIE['pma_collation_connection']) | |
&& ! empty($GLOBALS['collation_connection'])) { | |
$params['collation_connection'] = $GLOBALS['collation_connection']; | |
} | |
$params['token'] = $_SESSION[' PMA_token ']; | |
$param_strings = array(); | |
foreach ($params as $key => $val) { | |
/* We ignore arrays as we don't use them! */ | |
if (!is_array($val)) { | |
$param_strings[] = urlencode($key) . '=' . urlencode($val); | |
} | |
} | |
if (empty($param_strings)) { | |
return ''; | |
} | |
return $questionmark . implode($delim, $param_strings); | |
} | |
?> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
function PMA_generate_common_url ($db = '', $table = '', $delim = '&') | |
{ | |
if (is_array($db)) { | |
$params =& $db; | |
$delim = empty($table) ? $delim : $table; | |
$questionmark = '?'; | |
} else { | |
$params = array(); | |
if (strlen($db)) { | |
$params['db'] = $db; | |
} | |
if (strlen($table)) { | |
$params['table'] = $table; | |
} | |
$questionmark = ''; | |
} | |
// use seperators defined by php, but prefer ';' | |
// as recommended by W3C | |
$separator = PMA_get_arg_separator(); | |
// check wether to htmlentity the separator or not | |
if ($delim === '&') { | |
$delim = htmlentities($separator); | |
} else { | |
$delim = $separator; | |
} | |
if (isset($GLOBALS['server']) | |
&& $GLOBALS['server'] != $GLOBALS['cfg']['ServerDefault']) { | |
$params['server'] = $GLOBALS['server']; | |
} | |
if (empty($_COOKIE['pma_lang']) | |
&& ! empty($GLOBALS['lang'])) { | |
$params['lang'] = $GLOBALS['lang']; | |
} | |
if (empty($_COOKIE['pma_charset']) | |
&& ! empty($GLOBALS['convcharset'])) { | |
$params['convcharset'] = $GLOBALS['convcharset']; | |
} | |
if (empty($_COOKIE['pma_collation_connection']) | |
&& ! empty($GLOBALS['collation_connection'])) { | |
$params['collation_connection'] = $GLOBALS['collation_connection']; | |
} | |
$params['token'] = $_SESSION[' PMA_token ']; | |
$param_strings = array(); | |
foreach ($params as $key => $val) { | |
/* We ignore arrays as we don't use them! */ | |
if (!is_array($val)) { | |
$param_strings[] = urlencode($key) . '=' . urlencode($val); | |
} | |
} | |
if (empty($param_strings)) { | |
return ''; | |
} | |
return $questionmark . implode($delim, $param_strings); | |
} | |
?> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Returns url separator | |
* | |
* @return string character used for separating url parts | |
* | |
* @access public | |
* | |
* @author nijel | |
*/ | |
function PMA_get_arg_separator() { | |
// use seperators defined by php, but prefer ';' | |
// as recommended by W3C | |
$php_arg_separator_input = ini_get('arg_separator.input'); | |
if (strpos($php_arg_separator_input, ';') !== false) { | |
return ';'; | |
} elseif (strlen($php_arg_separator_input) > 0) { | |
return $php_arg_separator_input{0}; | |
} else { | |
return '&'; | |
} | |
} | |
?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment