Форма зворотньго звязку

Отже, приступимо до створення простої форми, основна функція якої завантажувати файли певного типу і розміру в певну папку на сервері.

 <form action="./upload.<a href="http://www.newbie.com.ua/php--html.html" target="_blank" title="PHP">PHP</a>" method="post" enctype="multipart/form-data">
<p><input type="file" name="userfile" id="file"></p>
<p><input type="submit" value="Загрузить файл"></p>
</form> 

body{
margin:0px;
 padding:0px;
 background: #FFF;
 background-image: none;
}

Крок 1.

Обробником цієї форми буде файл upload.php. Т.к. ми збираємося передавати через форму файли, то атрибут enctype потрібно обов'язково встановити в значення multipart / form-data.

 

Крок 2.
Тепер ми можемо приступати до створення обробника, яким у нас є файл upload.php. Почнемо ми з того, що пропишемо допустимі типи файлів, які можна буде завантажувати на наш сервер. Цим ми захистимо себе від загрози, яку приховують у собі деякі типи файлів, такі як. Php,. Pl і т.д.

 

<?php $Allowed_filetypes = array ('. Jpg', '. Gif', '. Bmp', '. Png'); // Тут ми перераховуємо допустимі типифайлів

$Max_filesize = 524288; // Максимальний розмір файлу в байтах (в даному випадку він дорівнює 0.5 Мб).
$Upload_path = '. / Files /'; // Місце, куди будуть завантажуватися файли (в даному випадку це папка 'files').
$Filename = $_FILES ['userfile'] ['name']; // В змінну $filename заносимо точне ім'я файлу (включаючи розширення).
$Ext = substr ($filename, strpos ($filename ,'.'), strlen ($filename) -1); // В змінну $ext заносимо розширення завантаженого файлу.
// Звіряємо отримане розширення зі списком недопустимих розширень, які ми визначили на самому початку. Якщо розширення завантаженого файлу не входить в список дозволених, то перериваємо виконання програми і видаємо відповідне повідомлення.
if (! in_array ($ext, $allowed_filetypes)) die ('Даний тип файлу не підтримується.');

// Тепер перевіримо розмір завантаженого файлу і якщо він більше максимально допустимого, то перериваємо виконання програми і видаємо повідомлення.
if (filesize ($_FILES ['userfile'] ['tmp_name'])> $max_filesize)

die ('Фаил занадто великий.');

// Перевіряємо, чи доступна на запис папка, визначена нами під завантаження файлів (папка files). Якщо раптом недоступна, то видаємо повідомлення, що на папку потрібно поставити права доступу 777.

if (! is_writable ($upload_path))

die ('Неможливо завантажити файл в папку. Встановіть права доступу - 777.');

// Завантажуємо фаил в зазначену папку.

if (move_uploaded_file ($_FILES ['userfile'] ['tmp_name'], $upload_path. $filename))

echo 'Ваш фаил успішно завантажений <a href="'. $upload_path. $filename.'"> дивитися </ a>';

else
echo 'При завантаженні виникли помилки. Спробуйте ще раз. ';

?>

Ще один момент, який Вам варто знати. PHP за замовчуванням не дозволяє завантажувати файли більше ніж 2 Мб. Щоб збільшити цей показник, Вам потрібно підправити параметри set upload_max_filesize і post_max_size у файлі php.ini

 
Останні статтіВипадкові статті по темі

Newbie.com.ua сайт на якому розміщено інформацію про хостинги, різні CMS Joomla, Wordpress, Typo3, та інші. Корисна інформація про PHP та CSS та багато іншого, що стане в нагоді як досвідченим майстра так і початківцям, які зможуть досягти From newbie to pro. Навіьт не маючи спеціалізованих знань, ви дізнаєтесь, що таке онлайн бізнес, про створення сайтів, розкрутку вебсайтів та їх монетизацію. Ви знатимете, що значить СЕО та пошукова оптимізація. Все це на нашому інтернет-журналі.