воскресенье, 30 апреля 2017 г.

пятница, 21 апреля 2017 г.

Загрузка файлов. Перемещение загруженных файлов

При перемещении файлов нам нужно знать:
1) какой файл мы хотим переместить:
 $tmp_file = $_FILES['file_upload']['tmp_name'];
$target_file = basename($_FILES['file_upload']['name']);

basename - дает только имя файла, которое в конце.

2) куда мы хотим его поместить: $upload_dir = "uploads"

3) переместим загруженный файл:
move_uploaded_file($tmp_file, $upload_dir."/".$target_file);

Перемещает только те файлы, которые были загружены и находятся во временной директории.

четверг, 20 апреля 2017 г.

Загрузка файлов. Ошибки загрузки

Есть 8 типов ошибок, которые можно получить.

Загрузка файлов. Инспектирование загруженных файлов

При отправке файлы не помещаются в суперглобальную $_POST, а помещаются в суперглобальныю $_FILES. В $_POST помещается все остальное содержимое.

Получить доступ к ним можно следующим образом: $_FILES['form_input']

Загрузка файлов. Отправка файлов как данных формы

В форме указываем: enctype="multipart/form-data"
В input должен стоять  type="file"
Обязательно указываем строку: <input type="hidden" name="MAX_FILE_SIZE" value="1000000"/> <!-- Размер примерно 1 МБ -->
MAX_FILE_SIZE не может быть больше максимального размера файла в настройках php.ini

Загрузка файлов. Конфигурирование PHP для загрузки (аплоада) файлов

Для загрузки файлов в php.ini 
file_uploads: On должна быть включена.
upload_tmp_dir: NULL - временная директория, в которую будут загружаться файлы. 
post_max_size: 8 M - размер запроса POST
upload_max_filesize: 2 M  - размер загружаемого файла.
max_execution_time: 30 sec - время выполнения, как долго PHP будет пытаться выполнить эту задачу, сколько времени он будет ждать получение этого файла.
max_input_time: -1 (no limit)  - время обработки
memory_limit: 128М - ограничение памяти или сколько памяти позволяет использоваться скрипту.

* Здесь указаны максимальные размеры по умолчанию.

Materialize-css. Футер

Сделаем футер и прижмем к низу страницы. Документация: https://materializecss.com/footer.html