![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 23.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Czy poniższy skrypt formularza wysyłającego plik na serwer jest dobry? Pomińmy system uwierzytelnienia który tutaj jest stworzony poprzez dołączenie pewnych części kodu instrukcją require('');
Kod <?php session_start(); ?> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-2" /> <style type="text/css"> <!-- body { font-family: Tahoma; font-size: 12px; color: #FFFFFF; padding-left: 10px; } input.przycisk { font-family: Tahoma; font-size: 11px; } --> </style> </head> <body background="gfx/tekst_tlo.gif"> <?php require('cos.php'); require('uwierzytelnienie.php'); if($_POST['formularz'] != 'no') { echo '<form enctype="multipart/form-data" action="dodaj_zdjecia.php" method="POST">' . '<input type="hidden" name="MAX_FILE_SIZE" value="5242880">' . '<input type="hidden" name="formularz" value="no">' . '<input type="hidden" name="wyslij" value="yes">' . 'Wybierz zdjęcie: <input type="file" name="zdjecie" class="przycisk">' . '<br><br>' . '<input type="submit" value="Wyślij plik" class="przycisk">' . '</form>'; } if($_POST['wyslij'] == 'yes') { if($_FILES['zdjecie']['error'] > 0) { echo '<font color="#FF0000">Zgodność pliku (Krok 1 z 3):</font> '; switch($_FILES['zdjecie']['error']) { case 1 : echo '<font color="#FF0000">Rozmiar pliku przekroczył wartość upload_max_filesize.</font>'; break; case 2 : echo '<font color="#FF0000">Rozmiar pliku przekroczył wartość max_file_size (5 MB)</font>.'; break; case 3 : echo '<font color="#FF0000">Plik został wysłany tylko częściowo.</font>'; break; case 4 : echo '<font color="#FF0000">Nie wysłano żadnego pliku.</font>'; break; } exit; } else { echo '<font color="#00FF00">Zgodność pliku (Krok 1 z 3): Wynik przebiegł pomyślnie.<br></font>'; } if(($_FILES['zdjecie']['type'] == 'image/pjpeg') || ($_FILES['zdjecie']['type'] == 'image/png')) { echo '<font color="#00FF00">Zgodność pliku (Krok 2 z 3): Wynik przebiegł pomyślnie.<br></font>'; } else { echo '<font color="#FF0000">Zgodność pliku (Krok 2 z 3): Ten plik nie posiada rozszerzenia *.JPG lub *.PNG.</font>'; exit; } $lokalizacja = '/Galeria/' . $_FILES['zdjecie']['name']; if(is_uploaded_file($_FILES['zdjecie']['tmp_name'])) { if((copy($_FILES['zdjecie']['tmp_name'], $lokalizacja)) == false) { echo '<font color="#FF0000">Zgodność pliku (Krok 3 z 3): Plik nie może zostać skopiowany.</font>'; exit; } else { echo '<font color="#00FF00">Zgodność pliku (Krok 3 z 3): Wynik przebiegł pomyślnie.</font>'; } } else { echo '<font color="#FF0000">Zgodność pliku (Krok 3 z 3): Możliwy atak podczas wysyłania pliku ' . $_FILES['zdjecie']['name'] . '.</font>'; exit; } } ?> </body> </html> Z góry dziękuję i pozdrawiam (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ) Piszę ten post dlatego, iż serwer zwraca mi błąd w postaci Cytat Zgodność pliku (Krok 1 z 3): Wynik przebiegł pomyślnie.
Zgodność pliku (Krok 2 z 3): Wynik przebiegł pomyślnie. Warning: copy() [function.copy]: open_basedir restriction in effect. File(/Galeria/kosa.JPG) is not within the allowed path(s): (/home/asot/:/tmp:/usr/local/lib/php/) in /home/asot/domains/2ti.src4u.com/public_html/dodaj_zdjecia.php on line 89 Warning: copy(/Galeria/kosa.JPG) [function.copy]: failed to open stream: Operation not permitted in /home/asot/domains/2ti.src4u.com/public_html/dodaj_zdjecia.php on line 89 Zgodność pliku (Krok 3 z 3): Plik nie może zostać skopiowany. Ten post edytował Kosa_03 23.10.2007, 21:18:30 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 05:56 |