Аватары

Discussion in 'PHP' started by Doom123, 19 Jul 2008.

  1. Doom123

    Doom123 Elder - Старейшина

    Joined:
    11 Nov 2006
    Messages:
    749
    Likes Received:
    244
    Reputations:
    22
    И так написал функцию для заливки аваиаров =) хотел спросить как вам =) типо безопасна ли она ?
    а то с аплоадом файлов 1ый раз имею дело :rolleyes:

    PHP:
    function avup($folder,$fname,$nname,$x,$y)
    {
        
    $data $_FILES[$fname];
        
    $tmp $data['tmp_name'];
        
    $file $data['name'];
        
        if (
    preg_match('#[^\?\"/:\*<>\|]+?\.\w+?#'$file))
        {
            if (@
    file_exists($tmp))
            {
                if ((
    $a strrpos($file'.')) !== false)
                {
                    
    $f strtolower(substr($file$a));
                    
    $name $folder.'/'.$nname;
                    switch(
    $f
                    {
                        case 
    '.gif':
                            
    $img = @imagecreatefromgif($_FILES[$fname]['tmp_name']);
                            
    $name .= $f;
                            break;
                        case 
    '.png':
                            
    $img = @imagecreatefrompng($_FILES[$fname]['tmp_name']);
                            
    $name .= $f;
                            break;
                        case 
    '.jpg': case '.jpeg':
                            
    $img = @imagecreatefromjpeg($_FILES[$fname]['tmp_name']);
                            
    $name .= $f;
                            break;
                    }
                }
                if(
    $img)
                {
                    if(
    imagesx($img) <= $x && imagesy($img) <= $y)
                        if(@
    move_uploaded_file($tmp$name))
                        return 
    $nname.$f;
                }
            }
        }
        return 
    false;
    }
     
    #1 Doom123, 19 Jul 2008
    Last edited: 19 Jul 2008