Welcome Guest, Not a member yet? Register   Sign In
class CI_Upload - Improvement code suggestion
#1

[eluser]phpMaster[/eluser]
Code:
#1
Order Allow, Deny
Allow from All
Deny from 12.123.23.231 45.67.45.67
#2
Order Deny, Allow
Deny from All
Allow from localhost 127.0.0.1 45.67.45.67
This is THE SMART Way to allow/disallow!
Credit to the Apache developers .....


I have taken one small step towards this in my CI_Upload:
Code:
class CI_Upload {
    
    var $max_size        = 0;
    var $max_width        = 0;
    var $max_height        = 0;
    var $allowed_types    = "";
--------------------------------------------

513    function is_allowed_filetype()
    {
        if (count($this->allowed_types) == 0)
        {
            $this->set_error('upload_no_file_types');
            return FALSE;
        }
        
521        foreach ($this->allowed_types as $val)
522        {   if( $val == 'all') return TRUE;
523            $mime = $this->mimes_types(strtolower($val));

The only change is line 522 addition: if( $val == 'all') return TRUE;

Suggestion:
Add 2 new variables, like this:
Code:
var $types_order        = "disallow"; //script alternative: "allow"
var $allowed_types      = ""; //script alternative: "all"/ or types
var $disallowed_types   = "all"; //script alternative: "" or types

So by default all types are disallowed.
But by script we could change this:
Example:
types_order: allow
allowed_types: all
disallowed_types: exe|bin|js



Hope you see this is good.
I setup an upload for myself at my localhost server.
I didnt want to create an array with 100 extensions, to allow myself to upload any file.

/phpMaster


Messages In This Thread
class CI_Upload - Improvement code suggestion - by El Forum - 09-10-2007, 03:35 AM
class CI_Upload - Improvement code suggestion - by El Forum - 09-13-2007, 08:01 AM
class CI_Upload - Improvement code suggestion - by El Forum - 09-13-2007, 10:28 AM



Theme © iAndrew 2016 - Forum software by © MyBB