Odbiór przesłanych plików ( $_FILES )
Założenie: Nauczymy się, jak odbierać informacje o przesłanych plikach za pomocą superglobalnej tablicy $_FILES
w PHP.
Krok po kroku:
- Utworzenie formularza HTML do przesyłania plików:
<form method="post" enctype="multipart/form-data" action="upload.php"> Wybierz plik: <input type="file" name="plik"> <input type="submit" value="Wyślij"> </form>
Atrybut
enctype="multipart/form-data"
jest kluczowy dla przesyłania plików.upload.php
to nazwa pliku, do którego zostaną wysłane dane. - Odbiór danych w pliku upload.php:
<?php if (isset($_FILES['plik'])) { $plik = $_FILES['plik']; // Sprawdzenie, czy plik został przesłany bez błędów if ($plik['error'] == UPLOAD_ERR_OK) { echo "Nazwa pliku: " . $plik['name'] . "<br>"; echo "Typ pliku: " . $plik['type'] . "<br>"; echo "Rozmiar pliku: " . $plik['size'] . " bajtów<br>"; echo "Nazwa tymczasowa: " . $plik['tmp_name'] . "<br>"; // Przeniesienie pliku do docelowego katalogu $cel = 'uploads/' . $plik['name']; if (move_uploaded_file($plik['tmp_name'], $cel)) { echo "Plik został pomyślnie przesłany."; } else { echo "Błąd podczas przesyłania pliku."; } } else { echo "Błąd podczas przesyłania pliku: " . $plik['error']; } } else { echo "Nie wybrano pliku."; } ?>
Kod ten sprawdza, czy plik został przesłany (
isset($_FILES['plik'])
), a następnie sprawdza kod błędu ($plik['error']
). Jeśli nie ma błędów, wyświetla informacje o pliku i przenosi go do katalogu `uploads/` za pomocą funkcji `move_uploaded_file()`. Pamiętaj o utworzeniu katalogu `uploads/` w tym samym katalogu co `upload.php`.
Ten przykład pokazuje podstawy obsługi przesyłania plików w PHP za pomocą tablicy $_FILES
. Zachęcamy do dalszego zgłębiania tematu, w tym walidacji plików, zabezpieczania przed atakami i zaawansowanej obsługi przesyłanych danych.