Veav_ 0 Zgłoś post Napisano Sierpień 21, 2013 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
Macsch 122 Zgłoś post Napisano Sierpień 21, 2013 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