Obsługa plików w formularzu
Założenie: Nauczymy się, jak przesłać plik za pomocą formularza HTML i obsłużyć go w PHP.
Krok po kroku:
- Krok 1: Formularz HTML. Utworzymy prosty formularz HTML, który umożliwi użytkownikowi wybranie pliku do przesłania.
- Krok 2: Skrypt PHP (upload.php). Ten skrypt będzie przetwarzał przesłany plik. Upewnij się, że katalog, do którego chcesz zapisywać pliki, ma odpowiednie uprawnienia do zapisu.
- Krok 3: Wyjaśnienie kodu PHP. Kod sprawdza metodę żądania, rozmiar pliku, typ pliku i następnie używa funkcji `move_uploaded_file()` do przeniesienia pliku z tymczasowej lokalizacji na serwerze do wybranego katalogu.
<form action="upload.php" method="post" enctype="multipart/form-data">
Wybierz plik: <input type="file" name="plik">
<input type="submit" value="Wyślij">
</form>
500000) { // 500KB
echo "Przepraszam, Twój plik jest za duży.";
$uploadOk = 0;
}
// Sprawdź typ pliku
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
echo "Przepraszam, tylko pliki JPG, JPEG, PNG & GIF są dozwolone.";
$uploadOk = 0;
}
// Sprawdź, czy wszystko jest ok, zanim przejdziesz dalej
if ($uploadOk == 0) {
echo "Przepraszam, Twój plik nie został przesłany.";
// Jeśli wszystko jest ok, spróbuj przesłać plik
} else {
if (move_uploaded_file($_FILES["plik"]["tmp_name"], $target_file)) {
echo "Plik ". htmlspecialchars( basename( $_FILES["plik"]["name"])). " został przesłany.";
} else {
echo "Przepraszam, wystąpił błąd podczas przesyłania pliku.";
}
}
}
}
?>
Pamiętaj o utworzeniu folderu “uploads” w tym samym katalogu co plik upload.php.
Ten przykład pokazuje podstawy obsługi plików w formularzach PHP. Zachęcamy do dalszego zgłębiania tematu, aby poznać zaawansowane techniki walidacji i bezpieczeństwa plików.