Верстка сайта с нуля

Верстка сайта с нуля

Видеокурс "Создание движка на PHP и MySQL 2.0" научит Вас создавать профессиональные движки для сайтов на PHP и MySQL с использованием ООП и паттерна MVC. В курсе разобрана вся теория по структуре движка: как всё устроено, какие должны быть объекты, какая у них иерархия и как они взаимодействуют между собой. В практической части будет создан движок с чистого листа. Будет создано ядро, все адаптеры, все вспомогательные классы, а также классы для работы с объектами базы данных. И чтобы курс был максимально полезным, будет создан движок для сайта MyRusakov.ru. Аналогично Вы сможете создать движок для абсолютно любого сайта. Данный курс идеально подходит тем, кто уже более-менее знает PHP, но ещё не умеет создавать действительно качественные и сложные по функционалу сайты.

Подробнее

Уроки и статьи

Новинка

Инструкция заработка на создании сайтов под заказ

javascript-cover

Получите бесплатную пошаговую инструкция с подробными видеокомментариями по тому, как с нуля за 3 месяца выйти на доход в 25 000 рублей/месяц, делая сайты на заказ


Для получение этого курса, пожалуйста, заполните форму снизу!

Имя:

e-mail:

Другие курсы

Яндекс-директ

Василий Кулик PHP - PHP основы

Загрузка файлов на сервер в PHP


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


В первую очередь, чтобы загружать файлы на сервер, нужно создать для этого специальную HTML-форму, с помощью которой можно выбрать нужный файл для дальнейшей его загрузки. Сразу скажу, что сама HTML-форма немного не совсем обычная. Там будет стоять новый атрибут и обязательно есть поле для выбора нужного файла для работы(загрузки). Вот HTML-код формы загрузки:


<form action = "loadFile.php" method = "post" enctype = 'multipart/form-data'>
  <input type = "file" name = "name" />
  <input type = "submit" value = "Загрузить файл" />
</form>


Обратите внимание, что в форме стоит атрибут "enctype" со значением "multipart/form-data". Данный атрибут позволяет загружать файлы на сервер. Если Вы его удалите, то ничего не будет работать. Можете после состава готового скрипта загрузки удалить атрибут и посмотреть на результат.


Вторым шагом мы напишем скрипт "loadFile.php", который файл загружать пока не будет, а просто займется распечаткой глобального двумерного массива $_FILES. Для этого нам нужно обязательно воспользуваться отладочной функцией "print_r", которая позволяет увидеть содержимое массива:


<?php
  print_r($_FILES);
?>


После работы скрипта Вы увидите следующее содержимое этого массива:


         1. name - Само имя загружаемого нами файла.


         2. type - Тип загружаемого файла. Этот атрибут является самым важным параметром обеспечение безопасности. Запомните, всегда нужно проверять загружаемый файл на тип, иначе, уверяю Вас, наберётесь проблем. Об этом мы поговорим с Вами в следующей статье.


         3. tmp_name - физический путь к временному файлу. Именно в это место и помещается файл при загрузки на сервер, после отправки формы загрузки, а уже потом мы его переносим в нужное место уже на сервере. Фактически, файл уже загружается на сервер, а мы его с помощью специальной функции перемещаем в нужное нам место на самом сервере.


         4. error - Количество ошибок, возникающих при загрузки файла. Если этот элемент равняется нулю - то ошибок нет.


         4. size - Это уже размер того файла, который загружается на сервер. Это частоиспользуемая опция проверки безопасности при загрузки файла. Она используется для того, чтобы размер загружаемых файлов можно было ограничить. Если будут к примеру загружаться аватарки гиганских размеров, то скорость загрузки страницы значительно ухудшиться.


Теперь наконец-то давайте напишем скрипт "loadFile.php" загрузки наших файликов:


<?php
    $name = $_FILES['name'];//Берём имя файла
    $uploaddir = "images/";//директория для загрузки файлов
    $uploadfile = $uploaddir.$name;
    move_uploaded_file($_FILES['tmp_name'], $uploadfile);//перемещаем файл с временной директории в нужную
?>


После работы скрипта Вы увидите, что файл загружаемый Вами будет находится в нужной директории. И на последок хочу сказать, что так использовать код загрузки файлов ни в коем случае нельзя, иначе сайту будет угрожать очень большая опасность с вопроса безопасности. Если использовать данный код, то на сайт можно загрузить все, что угодно. От HTML и PHP-файлов, до скриптов и приложений. Поэтому нужно всегда загрузку файлов проверять на безопасность(на типы, размеры, к-ство ошибок и т.п.), но как реализовать эту задачу мы поговорим в следующем уроке. Хочу напомнить, что на практике всегда перед написанием скрипта-загрузчика нужно разпечатать массив глобальный файла, чтобы быть увереным, что форма работать верно и не имеет ошибок, а уж потом приступать к загрузке. Всегда нужно двигаться маленькими шагами, тщательно всё проверяя на работоспособность.




Создано: 2014-03-30 19:53:36


Предыдущая статья

Вернуться на страницу со списками статей

Следующая статья




Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/wasiliykulik. Если Вы хотите дать оценку мне и моей работе, то напишите её на стене моего аккаунта.

Если Вы не хотите пропустить новые материалы на сайте, то Вы можете подписаться на обновления: Подписаться на обновления



Если у Вас остались вопросы по етой статьи, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу етой страницы.



Порекомендуйте эту статью друзьям:


Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

1. Текстовая ссылка:

Она выглядит вот так: Как создать свой сайт



Для добавление коментариев Войдите в систему
Если Вы ещё не зарегистрированы то сначала зарегистрируйтесь

Комментарии:(4)

 

Вадим

Как загружать файлы больших объемов на сервер ?
Добавлен:2014-12-07 - 18:30:10
 

Василий Кулик

В файле "htaccess" нужно прописать несколько строчек кода. В одной из следующий статей я напишу, как это сделать!
Добавлен:2014-12-07 - 18:31:37
 

mykraft

У меня ошибка в скрипте. Вроде всё правильно, но файлы не грузятся. Если я кину скрипт, то ты поможешь мне найти проблему? Уже два часа морочусь и без толку!
Добавлен:2015-05-12 - 13:13:21
 

Василий Кулик

Здравствуйте! научитесь искать ошибки в скриптах самостоятельно! Это очень важно для программиста! Если Вам будут постоянно за Вас решать проблемы, то Вы не станете программистом. Без обид только, но это факт! Попробуйте переписать скрипт, двигаясь маленькими шагами, проверяя тщательно работу скрипта шаг за шагом. Желаю удачи!
Добавлен:2015-05-18 - 13:16:05