Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Zabezpieczenie pliku / pola / strony
armind
post 25.11.2012, 19:23:45
Post #1





Grupa: Zarejestrowani
Postów: 61
Pomógł: 0
Dołączył: 15.11.2012

Ostrzeżenie: (0%)
-----


mam takie cos:
Tzn zmiana / wgrywanie avatara:
chciał bym go troche zabezpieczyc ale nie potrafie:

Kod
<?

function imggda($ust){

//---------USTAWIENIA-POCZATEK---------

$folder="upload/user/"; //Adres folderu z fotkami

$xd=300; //Maksymalna szerokosc duzej fotki

$s_min = 110; //Szerokosc miniaturki

$m_jakos=100; //Jakos miniaturki

$d_jakos=100; //Jakos duzej fotki

$m_przed="user_"; //Przedrostek miniaturek

$d_przed="d_"; //Przedrostek duzych

//---------USTAWIENIA-KONIEC---------

$plik_tmp = $_FILES['plik1']['tmp_name'];
$plik_nazwa = $_FILES['plik1']['name'];
$plik_rozmiar = $_FILES['plik1']['size'];

if($plik_rozmiar>="5242880"){echo"Klopoty z rozmiarem pliku.";exit();}

if($plik_tmp!="")
{

$sp = explode(".",$plik_nazwa); //wyciaganie rozszerzenia

srand();

$l = rand(100,999); // Losowanie Liczby

$name2x = time() * $l; //Generowanie Nazwy czas * liczba

$namenowa = "$name2x.$sp[1]"; //Nowa nazwa z rozszerzeniem

//Upload fotek

if($sp[1] == "jpg" or $sp[1]== "jpeg" or $sp[1] == "JPG" or $sp[1]== "JPEG" or $sp[1] == "gif" or $sp[1] == "GIF" or $sp[1] == "png" or $sp[1] == "PNG")
{

if(is_uploaded_file($plik_tmp))
{

    move_uploaded_file($plik_tmp, "".$folder."".$d_przed."".$namenowa."");
    chmod("".$folder."d_".$namenowa."", 0644);
}

}else{echo"Klopoty z poprawnoscia pliku.";exit();}

//---------POCZATEK-JPG---------
if($sp[1] == "jpg" or $sp[1]== "jpeg" or $sp[1] == "JPG" or $sp[1]== "JPEG")
{
    header("Content-type: image/jpeg");
    $org = imagecreatefromjpeg("".$folder."".$d_przed."".$namenowa."");
    $s_org = imagesx($org);
    $w_org = imagesy($org);
    if(($w_min = floor(($s_min * $w_org) / $s_org)) > 150) $w_min = 150;
    $min = ImageCreateTrueColor($s_min, $w_min);
    imagecopyresampled($min, $org, 0, 0, 0, 0, $s_min, $w_min, $s_org, $w_org);

    imagejpeg($min,"".$folder."".$m_przed."".$namenowa."", $m_jakos);


    if($s_org >= ($xd+1))
    {
       if(($w_big = floor(($xd * $w_org) / $s_org)) > 648) $w_big = 648;
       $big = ImageCreateTrueColor($xd, $w_big);
       imagecopyresampled($big, $org, 0, 0, 0, 0, $xd, $w_big, $s_org, $w_org);
  
       imagejpeg($big,"".$folder."".$d_przed."".$namenowa."", $d_jakos);
    }

}
//---------KONIEC-JPG---------

//---------POCZATEK-GIF---------
else if($sp[1] == "gif" or $sp[1] == "GIF")
{
    header("Content-type: image/gif");
    $org = imagecreatefromgif("".$folder."".$d_przed."".$namenowa."");
    $s_org = imagesx($org);
    $w_org = imagesy($org);
    if(($w_min = floor(($s_min * $w_org) / $s_org)) > 150) $w_big = 150;
    $min = ImageCreateTrueColor($s_min, $w_min);
    imagecopyresampled($min, $org, 0, 0, 0, 0, $s_min, $w_min, $s_org, $w_org);

    imagegif($min,"".$folder."".$m_przed."".$namenowa."", $m_jakos);


    if($s_org >= ($xd+1))
    {
       if(($w_big = floor(($xd * $w_org) / $s_org)) > 648) $w_big = 648;
       $big = ImageCreateTrueColor($xd, $w_big);
       imagecopyresampled($big, $org, 0, 0, 0, 0, $xd, $w_big, $s_org, $w_org);
  
       imagegif($big,"".$folder."".$d_przed."".$namenowa."", $d_jakos);
    }

}
//---------KONIEC-GIF---------

//---------POCZATEK-PNG---------
else if($sp[1] == "png" or $sp[1] == "PNG")
{
    header("Content-type: image/png");
    $org = imagecreatefrompng("".$folder."".$d_przed."".$namenowa."");
    $s_org = imagesx($org);
    $w_org = imagesy($org);
    if(($w_min = floor(($s_min * $w_org) / $s_org)) > 150) $w_big = 150;
    $min = ImageCreateTrueColor($s_min, $w_min);
    imagecopyresampled($min, $org, 0, 0, 0, 0, $s_min, $w_min, $s_org, $w_org);

    imagepng($min,"".$folder."".$m_przed."".$namenowa."", $m_jakos);


    if($s_org >= ($xd+1))
    {
       if(($w_big = floor(($xd * $w_org) / $s_org)) > 648) $w_big = 648;
       $big = ImageCreateTrueColor($xd, $w_big);
       imagecopyresampled($big, $org, 0, 0, 0, 0, $xd, $w_big, $s_org, $w_org);
  
       imagepng($big,"".$folder."".$d_przed."".$namenowa."", $d_jakos);
    }

}
//---------KONIEC-PNG---------
else
{
header("Location: ".$ust['adres']."panel/6");
exit();
}

$fotm = $m_przed."".$namenowa;
$fotd = $d_przed."".$namenowa;

return $fotm;


   }

}

?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 20:35