Skocz do zawartości
Veav_

Upload obrazków

Polecane posty

Witam. Chciałem sobie zrobić upload plików na swojej stronce i znalazłem taki o to kod :

 

 

 

<?php 
echo '<?xml version="1.0" encoding="iso-8859-2"?>'; 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
transitional.dtd">
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
<title>Upload</title>
</head>
<body>

<div>
<form enctype="multipart/form-data" action="index.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="50000" />
<input name="plik" type="file" />
<input type="submit" value="Wyślij plik" />
</form>
</div>

<?php
$plik_tmp = $_FILES['plik']['tmp_name']; 
$plik_nazwa = $_FILES['plik']['name']; 
$plik_rozmiar = $_FILES['plik']['size'];

if(is_uploaded_file($plik_tmp)) {
     move_uploaded_file($plik_tmp, "upload/$plik_nazwa");
    echo "Plik: <strong>$plik_nazwa</strong> o rozmiarze 
    <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer!";
} 
?> 
</body>
</html>

 

Dało by się to jakoś przerobić żeby można wrzucać tylko pliki o rozszerzeniu obrazków oraz żeby po wrzuceniu pokazywał się link do obrazka?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Musisz sobie zdefiniować jakie formaty grafiki mogą być przesyłane a następnie za pomocą np. in_array wyplewić całą resztę.

Jeżeli chcesz to zabezpieczyć przed cwaniaczkami, musisz nadpisać ten plik graficzny funkcjami z biblioteki GD lub imagemagic, przy okazji pozbywając się elementów z zawartości grafiki przez które można zrobić atak XSS.

MAX_FILE_SIZE bezpośrednio w HTML i kupa a nie zabezpieczenie. Takie rzeczy robi się poprzez pehapa.

 

Jeżeli chodzi o gotowy link po wysłaniu, musisz w formularzu wygenerować identyfikator a potem go przekazać do metody pobierającej tą grafikę.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×