Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Аватары (https://forum.antichat.xyz/showthread.php?t=77749)

Doom123 19.07.2008 22:19

Аватары
 
И так написал функцию для заливки аваиаров =) хотел спросить как вам =) типо безопасна ли она ?
а то с аплоадом файлов 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;




Время: 04:44