5

Сайт-
визитка:

Сайт-визитка – это небольшой по размеру сайт (объем до 10 страниц), на котором размещается информация например о вашей компании.

0

Корпоративный сайт:

Это, веб-интерфейс определенной компании, который создан для доступа сотрудника к корпоративным данным и приложениям.

8

Интернет-магазин:

сайт, позволяет пользователям онлайн, в своём браузере, сформировать заказ на покупку, выбрать способ оплаты и доставки заказа.

Функция загрузки файлов на сервер с помощью PHP

В данном уроке мы научимся создавать загрузку файлов на сервер с помощью PHP-функции. Прежде чем начать урок можете посмотреть демо урока, чтобы знать стоит вам его делать или нет.

Демо | Скачать

Урок не мой, но в ходе проверки работоспособности данной функции и для создания демо-версии я его написал, и в некоторых местах исправил код. Изменения небольшие, просто переименовал файлы, папку назначения и оформил вывод ошибок.

Для данного урока нам понадобится локальный сервер. В качестве сервера я использовал Denwer (Денвер). Вы можете использовать любой другой сервер, который вам удобен. В замену денвера можете использовать Endels.

Шаг 1. Разметка страницы

Первым шагом нам нужно создать страницу с расширением .PHP, обычный HTML сюда не подходит. После того, как вы создали страницу (у меня она называется index.php) в ней нужно разместить обычную форму, для этого пишем такой код:

<form action="" method="post" enctype="multipart/form-data" class="reset"> <p class="form"><input name="filename" type="file"><input name="f" type="checkbox" value="1"> — перезаписать</p> <input name="go" type="submit" value="Загрузить" class="reset"> </form>
Если форма появилась на странице, то значит пока все правильно. Теперь можно закрыть файл index.php и пока про него забыть.

Шаг 2. PHP-функция

На данном шаге мы будем писать основную функцию, которая будет отвечать за загрузку и обработку файлов. Для этого создаем новый файл с расширением .PHP и даем ему название function.php. Теперь в ней начнем писать код функции:

<?php // Загрузка файлов function upload($filename, $pach, $flag = false) { // $filename — это свойство name в input // $pach — директория куда будет сохранён загруженный файл // директория загрузки должна иметь доступ 777 // $flag — по умолчанию false (0), // определяет перезапись существующего файла в директории, если выставлен TRUE (1) // Проверяет существует ли директория и возможно ли её открыть из этого скрипта if(!opendir($pach)){return ‘Директория сохранения файлов, указана неверно!’;} // устанавливаем директорию загрузки файла $uploadfile = $pach.basename($_FILES[$filename]['name']); // Устанавливаем вариант перезаписи файла // если false, файл не перезаписывается, а выдаётся предупреждение. if(!$flag){ // Проверяем существует ли такой файл в директории if(is_file($uploadfile)) return("ВНИМАНИЕ! Такой файл уже существует."); } if(!empty($filename)) { // Ограничения размера загружаемого файла if($_FILES[$filename]['size'] > 1024*2*1024) { return("Размер файла превышает 2 мегабайта"); } // Проверяем загружен ли файл if(is_uploaded_file($_FILES[$filename]['tmp_name'])) { // Если файл загружен успешно, перемещаем его // из временной директории в конечную if(copy($_FILES[$filename]['tmp_name'],$uploadfile)) { return("OK! Файл успешно загружен."); } else { return(‘<strong>’/*. $_FILES[$filename]['tmp_name'].$pach */.$_FILES[$filename]['name'].’ </strong> — не является правильно загруженным файлом или не может быть перемещён из временной директории.’); } } else { switch($_FILES[$filename]['error']) { case 1: echo "Размер файла превышает допустимый."; break; case 2: echo "Размер файла превышает допустимый."; break; case 3: echo "Загружаемый файл был получен только частично."; break; case 4: echo "Файл не был загружен!"; break; } } } else { return(‘Не указан файл для загрузки!’); } } ?>
Для удобства весь код подписан (добавлены комментарии).

Шаг 3. Подключаем файл function.php

В этом шаге мы подключим файл function.php к нашему файлу с формой (index.php). Для этого откройте файл index.php и добавьте выше нашей формы вот такой код:

<?php // Подключаем файл функций-стандартная инструкция php include ‘function.php’; // Проверяем правильность отправки данных именно с той формы // в которой значение кнопки, т.е. надпись равна — ‘Загрузить’ // Только если это значение совпадает будет активирована // наша функция загрузки файлов. if($_POST['go'] == ‘Загрузить’) { echo upload(‘filename’, ‘./files/’, $_POST['f']); } ?>
Особое внимание обратите на последнюю строчку echo upload(‘filename’, ‘./files/’, $_POST['f']); , особенно на выделенное слово files. Files — это название директории (название папки) в которой будут хранится все загруженные файлы. Название ей можете дать любое, главное чтобы не по-русски.

Шаг 4. Создаем папку

Теперь создаем в том же месте, где лежат наши файлы index.php и function.php, папку с названием, которое вы дали на предыдущем шаге. В моем случае папка называется files. Структура папки у вас должна быть почти такой же, за исключением названия папки для хранения файлов:

Comments are closed.