Za darmo na e-mailPraktyczny kurs PHP (aż 200 stron!)

Krok po kroku, opanuj podstawy PHP za darmo - praktyczny kurs w formie e-booka prosto na Twój e-mail

Upload, czyli wysyłanie pliku na serwer

Wysyłanie pliku na serwer

Dzięki PHP możemy w łatwy i przyjemny sposób obsłużyć pliki uploadowane na serwer. Jednak, by prawidłowo wysłać plik, niezbędny będzie odpowiedni formularz HTML. Poniżej przedstawię przykład takiego formularza:

<form enctype="multipart/form-data" action="plik.php" 
		 method="post" >
<input type="hidden" name="MAX_FILE_SIZE" value="512000" />
<input type="file" name="nazwa_pliku" />
<input type="submit" value="wyślij" />
</form>

Jak można zauważyć, formularz posiada kilka dodatkowych elementów. Pierwszym z nich jest dodatkowy atrybut enctype=”multipart/form-data”, który musimy dodać, by móc wysłać plik. Trzeba pamiętać, że pliki wysyłamy tylko i wyłącznie metodą POST.

Kolejnym niezbędnym dodatkiem jest ukryte pole o nazwie “MAX_FILE_SIZE”. Zawiera ono informację o maksymalnym rozmiarze pliku (wartość w bajtach). Na koniec pole typu “FILE”, którego umieszczenie umożliwi wybranie pliku z dysku lokalnego.

Plik na serwerze

Po wysłaniu pliku na serwer, w zmiennej superglobalnej $_FILES pojawia się nowy rekord $_FILES[‘nazwa_pliku’]. Od tej pory zawiera on tablicę informacji o wysłanym pliku. Te informacje to: rozmiar, nazwa, nazwa tymczasowa, błędy oraz typ pliku. Tak więc, po umieszczeniu na stronie plik.php odpowiedniego kodu, możemy sprawdzić z jakim plikiem mamy do czynienia.

<?php

// wyświetlanie typu pliku
echo $_FILES['nazwa_pliku']['type'];

// wyświetlanie rozmiaru
echo $_FILES['nazwa_pliku']['size'];

// wyświetlanie nazwy pliku
echo $_FILES['nazwa_pliku']['name'];

// wyświetlanie nazwy tymczasowej
echo $_FILES['nazwa_pliku']['tmp_name'];

// wyświetlanie ewentualnych błędów
echo $_FILES['nazwa_pliku']['error'];

?>

Wiesz już w jaki sposób PHP tarktuje pliki, wysyłane formularzem HTML. W następnym rozdziale spróbujemy wysłać obrazek .jpg na serwer. Skrypt będzie sprawdzał, czy wysłany plik jest obrazkiem oraz czy nie wystąpiły błędy. Następnie zapisze go ze zmienioną nazwą. Zapraszam!

Spis lekcji w rozdziale szóstym

Poprzednia lekcja: WyjątkiNastępna lekcja: Wysyłanie obrazka na serwer

Dodaj komentarz

Ominiesz taką okazję?Praktyczny Kurs PHP (aż 200 stron!) za darmo

Gorąco polecam, naprawdę warto skorzystać! To nic nie kosztuje. Krok po kroku, opanuj podstawy PHP za darmo - praktyczny kurs w formie e-booka prosto na Twój e-mail.