Prześlij plik w PHP - Jak utworzyć plik do przesłania w PHP? - Przykłady

Spisie treści:

Anonim

Wprowadzenie do przesyłania pliku w PHP

W PHP użytkownicy mogą przesyłać pliki za pomocą funkcji przesyłania plików oraz pliku, który należy przesłać za pomocą formularza i można go łatwo załączyć i przesłać. Użytkownik może przesyłać wiele typów plików, które mogą być formą dokumentu, formą obrazu, formatem pdf itp. Pliki tego typu mają rozszerzenie tj. Docx, .jpeg.webp, .pdf itp. Ten rodzaj pliku jest zatwierdzany przez forma i rozmiar pliku są ustawione tak, aby nie można było załadować więcej niż tego rozmiaru. Jest to zaawansowana funkcja dla użytkownika, który ręcznie wprowadzał dane, teraz wybiera tę opcję.

Jak utworzyć plik do przesłania w PHP?

Dzięki PHP bardzo łatwo jest przesłać pliki na serwer za pomocą formularza, a dane są również bezpieczne w porównaniu do innych. Plik konfiguracyjny „php.ini” zawiera zmienną, którą należy ustawić dla plików, które mają być przesłane, i nazywa się „file_uploads”, którą należy ustawić na ON, aby włączyć funkcję przesyłania. Mamy kilka kroków do przesłania pliku na serwer.

Istnieje kilka kontroli, zanim plik zostanie przesłany na serwer za pomocą formularza. Te kontrole są nazywane jako sprawdzenie poprawności przesłanego pliku.

Poniżej znajduje się kilka ważnych punktów, które kody programistów sprawdzają poprawność formularza:

1. File_uploads

Wartość tej zmiennej powinna być WŁĄCZONA dla plików do przesłania. Jeśli nie jest WŁĄCZONY, pliku nie można załadować na serwer. Tak więc powinno być zawsze WŁĄCZONE.

2. Prześlij maksymalny rozmiar

Ta dyrektywa służy do konfigurowania maksymalnego rozmiaru pliku, który można załadować na serwer za pomocą formularza. Jest to rodzaj kontroli wykonywanej w celu sprawdzenia rozmiaru pliku przesłanego przez użytkownika. Domyślny rozmiar pliku jest ustawiony na 2M (dwa megabajty), i możemy zastąpić tego rodzaju ustawienie za pomocą pliku .htaccess, w którym programista może zwiększyć rozmiar pliku. Dwa megabajty to niewiele w dzisiejszych standardach, więc być może będziemy musieli to zwiększyć. Jeśli pojawi się błąd informujący, że rozmiar pliku przekracza wartość upload_max_filesize podczas próby przesłania pliku, musisz zwiększyć tę wartość. Jeśli to zrobisz, upewnij się, że zwiększysz również rozmiar post_max_size.

3. Upload_tmp_dir

Ustawia katalog tymczasowy, który będzie używany do przechowywania przesłanych plików przez użytkownika. W większości przypadków nie musimy się martwić tym ustawieniem. Jeśli go nie ustawimy, domyślne ustawienie systemu automatycznie ustawi katalog tymczasowy, którego można użyć.

4. Post_max_size

Dyrektywa post_max_size pozwala nam ustawić maksymalny rozmiar danych przesyłanych metodą POST. Ponieważ pliki są przesyłane za pomocą żądań POST, wartość musi być większa niż ustawiona dla upload_max_filesize. Na przykład jeśli rozmiar pliku upload_max_files wynosi 20 MB (20 megabajtów), może być konieczne ustawienie parametru post_max_size na 24 MB.

5. Max_file_uploads

Pozwala ustawić maksymalną liczbę plików, które użytkownik może przesłać za jednym razem. Domyślnie liczba użytkowników wynosi 20 na raz.

6. Max_input_time

Jest to liczba sekund, przez którą skrypt może analizować dane wejściowe przez użytkownika. Powinniśmy ustawić rozsądną wartość, jeśli mamy do czynienia z przesyłaniem dużych plików. 60 (60 sekund) i jest dobrą wartością dla większości aplikacji.

7. Limit_pamięci

Dyrektywa o limitach pamięci wskazuje, że maksymalna ilość pamięci, którą skrypt może zużyć na serwerze. Jeśli napotykamy jakiekolwiek problemy podczas przesyłania dużych plików, musimy ustawić wartość dyrektywy większą niż ta, którą ustaliliśmy dla dyrektywy post_max_size. Domyślnie wartość jest ustawiona na 128M (128 megabajtów), więc jeśli nie mamy bardzo dużego post_max_size i upload_max_filesize, nie musimy się tym martwić.

8. Max_execution_time

Ta dyrektywa jest używana przez maksymalną liczbę sekund, w których skrypt może działać na serwerze. Jeśli napotkamy jakiekolwiek problemy podczas przesyłania dużych plików, możemy rozważyć zwiększenie wartości do większej liczby sekund, na przykład 60 (1 minuta), i powinno to działać dobrze w przypadku większości aplikacji.

Przykłady przesyłania pliku w PHP

Niektóre przykłady podano poniżej:

Przykład 1

Kod:



Select any image to upload:


Wynik:

Przykład nr 2

Kod:



Photo Upload Form

Upload File
Filename:



Photo Upload Form

Upload File
Filename:



Photo Upload Form

Upload File
Filename:

Uwaga: Tylko formaty .jpg.webp, .jpeg.webp, .gif, .png.webp są dozwolone w maksymalnym rozmiarze 2 MB większym niż ten, którego nie można przesłać.

Wynik:

Przykład nr 3

Kod:



Select a file to upload:


Wynik:

Przykład 4

Kod:

<_?php
$target_path = "c:/";
$target_path = $target_path.basename( $_FILES('fileToUpload')('name'));
if(move_uploaded_file($_FILES('fileToUpload')('tmp_name'), $target_path)) (
echo "File has been uploaded successfully!";
)
else
(
echo "Sorry, file not uploaded, please check and try again!";
)
?>

Wynik:

W powyższych przykładach użytkownik widzi ekran wyświetlany na migawkach. Użytkownicy dołączą dokument, klikając opcję „wybierz plik”. Plik zostanie dołączony, gdy użytkownik wybierze plik ze swojego komputera lokalnego i kliknie przycisk Prześlij, aby przesłać dokumenty na serwer. Następnie użytkownik zostanie poproszony o wiadomość, że plik został pomyślnie przesłany.

Wniosek

W tym artykule omówiliśmy, w jaki sposób użytkownik może przesłać plik na serwer za pomocą formularza oraz w jaki sposób przesłany plik może być sprawdzany w różnych formach, a także ograniczenia serwera dotyczące przesyłania pliku. Użytkownik może nie rozumieć procesu backendu, ale programista musi kodować w taki sposób, aby dokument przesłany przez użytkownika był poprawny, a dane zabezpieczone.

Polecane artykuły

Jest to przewodnik po przesyłaniu pliku w PHP. Tutaj omawiamy wprowadzenie, Jak utworzyć plik do przesłania w PHP, Przykłady pliku do przesłania w PHP. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Narzędzia bezpieczeństwa w chmurze
  2. Wewnętrzne linkowanie w SEO
  3. Układ HTML
  4. Formularz PHP