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

Jeszcze nie jest za późnoPobierz Kurs PHP (aż 200 stron!) zupełnie za darmo!

Jeśli miałbyś wziąć tylko jedną rzecz z tej wizyty, zabierz właśnie ten darmowy kurs PHP. Praktyczny kurs w formie e-booka prosto na Twój e-mail.