Завантаження файлів на сервер в php
Відео: PHP РОБОТА З ФАЙЛАМИ. Завантаження файлів на сервер (частина 1)
Відео: [PHP] Завантаження файлів на сервер (Урок 25)
Напевно, Ви часто завантажували різні файли на сайти. наприклад, завантажували аватари на форумі, фотографії в соціальних мережах, різні відеоролики на відеохостінги, просто файли на файлообмінники. І ось в цій статті Ви дізнаєтесь, як завантажити файли на сервер в PHP. Саме через PHP в більшості випадків це і реалізують.
Насамперед, що потрібно засвоїти - це те, що сама HTML-форма, в яку підставляється файл повинна бути не зовсім звичайною, ось приклад HTML-коду такої форми:
Ключовий момент тут - це атрибут "enctype"Зі значенням"multipart / form-data". Без нього нічого працювати не буде.
Тепер пишемо скрипт "loading.php", В якому ми ще завантажувати файл не будемо, а пройдемося трохи по різним важливим моментам, які треба обов`язково враховувати, інакше може постраждати безпеку:
lt ;?php
print_r($ _FILES) -
?gt;
В результаті, Ви побачите вміст глобального двовимірного масиву $ _FILES:
Відео: Завантаження файлів методом POST на сервер. HTML + PHP
- name - ім`я файлу, що.
- type - MIME-type завантаження. Це, мабуть, найважливіший параметр для забезпечення безпеки. І завжди при прийомі файлів необхідно перевіряти MIME-type, інакше проблем не оберётесь. У наступній статті ми поговоримо про це більш детально.
- tmp_name - фізичний шлях до тимчасового файлу. Саме в це місце і поміщається файл, а вже потім ми його переносимо в інше місце. Фактично, файл вже завантажений, а нам лише треба його перемістити в потрібну папку на сервері.
- error - код помилки. якщо 0, то помилок немає.
- size - розмір файлу. Ось це теж частоіспользуемих опція, і її також треба перевіряти, щоб обмежити розмір файлів. Безумовно, самим сервером цей розмір обмежений, однак, для будь-яких картинок, цей розмір явно завищений (як правило, він 10 МБ).
І всі ці параметри присутні для кожного завантаження (кожні з яких представляють собою масив в двовимірному масиві $ _FILES).
Тепер давайте вже закінчимо з завантаженням файлів на сервер в PHP, і для цього напишемо такий код ( "loading.php"):
lt ;?php
$ uploadfile ="Images /".$ _FILES[`Somename`] [`Name`] -
move_uploaded_file($ _FILES[`Somename`] [`Tmp_name`], $ uploadfile) -
?gt;
Тобто спочатку ми задаємо шлях до завантажуваного файлу на сервері. Тут ми хочемо помістити файл в директорію "images"З тим же ім`ям, що і було раніше у файлу. А функцією move_uploaded_file () ми переміщаємо файл в обрану нами директорію з його тимчасового сховища.
Однак, зверніть увагу, це дуже важливо! Так використовувати код ні в якому разі не можна, інакше Вашому сайту загрожуватиме серйозна небезпека! Фактично, на даний момент може бути завантажено абсолютно все, що завгодно: будь-які виконувані файли, скрипти, HTML-сторінки і інші дуже небезпечні речі. Тому обов`язково треба перевіряти завантаження на сервер дуже ретельно. І ось цим ми і займемося в наступній статті. Оскільки тема дуже важлива, то я раджу Вам підписатися на оновлення, щоб не пропустити цю статтю.
- Безпека php на сервері
- Drag and drop завантаження файлів на сервер. Частина 1.
- Безпека при завантаженні файлів на сервер в php
- Drag and drop завантаження файлів на сервер. Частина 3.
- Чому не працює php?
- Як використовувати файли tpl
- Які ставити права доступу на хостингу
- Як оновити php на denwer.
- Команда tftp - обмін файлами по протоколу tftp
- Команда wget linux
- Завантаження файлів великих розмірів в php
- Способи передачі великих файлів в мережі інтернет
- Робота з ftp через php
- Відправка cookie через curl
- Динамічне завантаження файлів на jquery
- Висновок mp3-файлів на сайті через php
- Перевірка форми в jаvascript
- Копіювання файлів scp
- Динамічна перевірка форми на jаvascript
- Завантаження і вивантаження xml-документів через dom
- Скрипт форми зворотного зв`язку