Welcome Guest, Not a member yet? Register   Sign In
why CI have to Standardizes newline? it changes 1 newline to double newline (CI2.0)
#4

[eluser]vee[/eluser]
this is my fix
http://www.okvee.net/2011/02/16/xss-filt...-new-line/

this double new line is very ugly bug and occurs when using $_POST or $_GET

create MY_Input.php in application/core

Code:
class MY_Input extends CI_Input {

    function  __construct() {
        parent::__construct();
    }// __construct

    // --------------------------------------------------------------------

    /**
    * Clean Input Data
    *
    * This is a helper function. It escapes data and
    * standardizes newline characters to \n
    *
    * @access   private
    * @param    string
    * @return   string
    */
    function _clean_input_data($str)
    {
        if (is_array($str))
        {
            $new_array = array();
            foreach ($str as $key => $val)
            {
                $new_array[$this->_clean_input_keys($key)] = $this->_clean_input_data($val);
            }
            return $new_array;
        }

        // We strip slashes if magic quotes is on to keep things consistent
        if (function_exists('get_magic_quotes_gpc') AND get_magic_quotes_gpc())
        {
            $str = stripslashes($str);
        }

        // Clean UTF-8 if supported
        if (UTF8_ENABLED === TRUE)
        {
            $str = $this->uni->clean_string($str);
        }

        // Should we filter the input data?
        if ($this->_enable_xss === TRUE)
        {
            $str = $this->security->xss_clean($str);
        }

        // Standardize newlines if needed
        if ($this->_standardize_newlines == TRUE)
        {
            if (strpos($str, "\r") !== FALSE)
            {
                $str = str_replace(array("\r\n", "\r"), "\n", $str);
            }
        }

        return $str;
    }
}

/* end of file */


Messages In This Thread
why CI have to Standardizes newline? it changes 1 newline to double newline (CI2.0) - by El Forum - 02-21-2011, 03:46 PM



Theme © iAndrew 2016 - Forum software by © MyBB