Пример #1
0
 /**
  * Devuelve un parametro POST limpiado si existe y si no devuelve NULL
  * @param string $nombre
  * @return null o string
  */
 public function postCleanParam($nombre)
 {
     if (isset($this->postParams[$nombre])) {
         return clean_vars($this->postParams[$nombre]);
     } else {
         return NULL;
     }
 }
Пример #2
0
/**
 * Realiza la limpieza de un string o conjunto de string llamando a la funcion filtro_xss
 * @param string o array[string] $valor
 * @return string o array[string]
 */
function clean_vars($value)
{
    if (is_array($value)) {
        foreach ($value as $key => $val) {
            $value[$key] = clean_vars($val);
        }
    } else {
        $value = filter_simple_xss($value);
    }
    return $value;
}
Пример #3
0
function clean_vars($vars, $safe_redirect = True)
{
    if (!is_array($vars)) {
        return $GLOBALS['data_cleaner']->clean($vars, $safe_redirect);
    }
    foreach ($vars as $key => $val) {
        $vars[$key] = clean_vars($val, $safe_redirect);
    }
    return $vars;
}
Пример #4
0
/**
 * Esta funcion devuelve los parametros de la uri, estos son los parametros que en mapeo fueron definidos entre ()
 * No son los parametros GET ni POST
 * @param string $url
 * @return array[string]
 */
function uri_params($url, $uriapp = NULL)
{
    $parametros = NULL;
    $method = 'index';
    $dinamic = FALSE;
    //Elimino el primer caracter si es igual a "/"
    $url = ltrim($url, '/');
    //Separa la url y la uri en partes para poder analizarlas
    $partes_url = explode("/", $url);
    $uri_explode = explode("?", URIAPP);
    if ($uriapp !== NULL) {
        $uri_explode = explode("?", $uriapp);
    }
    $uri_front = $uri_explode[0];
    $partes_uri_actual = explode("/", $uri_front);
    //Si en la url hay un * o un - limpio paso todo lo que venga desde la url real como un parametro
    $in_array_guion = in_array('-', $partes_url);
    $in_array_aster = in_array('*', $partes_url);
    if ($in_array_guion || $in_array_aster) {
        $count_partes_uri_actual = count($partes_uri_actual);
        $encontrado = FALSE;
        for ($i = 0; $i < $count_partes_uri_actual; $i++) {
            if (!$encontrado) {
                if ($partes_url[$i] == '-' || $partes_url[$i] == '*') {
                    $encontrado = TRUE;
                    if ($partes_url[$i] == '-' && $partes_uri_actual[$i] != '') {
                        $method = $partes_uri_actual[$i];
                        continue;
                    }
                } else {
                    continue;
                }
            }
            $parametros[] = $partes_uri_actual[$i];
        }
        if ($in_array_guion) {
            $dinamic = TRUE;
        }
    }
    //Pase lo que pase arriba esto puede ir siempre, ya que puede estar anterior al * o al -
    $count_partes_uri = count($partes_url);
    for ($i = 0; $i < $count_partes_uri; $i++) {
        if (empty($partes_url[$i]) || empty($partes_uri_actual[$i])) {
            //Si alguno esta vacio ya no hay parametros uri, es decir ()
            break;
        } else {
            //Si la parte de la url comienza con ( y termina con ) le paso el parametro
            if ($partes_url[$i][0] == "(" and $partes_url[$i][strlen($partes_url[$i]) - 1] == ")") {
                $nombre = trim($partes_url[$i], "()");
                $parametros[$nombre] = $partes_uri_actual[$i];
            }
        }
    }
    if ($parametros != NULL) {
        $parametros = clean_vars($parametros);
    }
    return array('params' => $parametros, 'method' => $method, 'dinamic' => $dinamic);
}