Презентация Загрузка файлов по протоколу HTTP онлайн

На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему Загрузка файлов по протоколу HTTP абсолютно бесплатно. Урок-презентация на эту тему содержит всего 45 слайдов. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.
Презентации » Устройства и комплектующие » Загрузка файлов по протоколу HTTP



Оцените!
Оцените презентацию от 1 до 5 баллов!
  • Тип файла:
    ppt / pptx (powerpoint)
  • Всего слайдов:
    45 слайдов
  • Для класса:
    1,2,3,4,5,6,7,8,9,10,11
  • Размер файла:
    118.16 kB
  • Просмотров:
    108
  • Скачиваний:
    6
  • Автор:
    неизвестен



Слайды и текст к этой презентации:

№1 слайд
Лекция Загрузка файлов по
Содержание слайда: Лекция 1 Загрузка файлов по протоколу HTTP

№2 слайд
Загрузка файлов на сервер
Содержание слайда: Загрузка файлов на сервер Загрузка файлов на сервер осуществляется пользователями сети интернет довольно часто: Веб-интерфейсы почтовых сервисов Интерактивные фотогалереи и фотоальбомы Видеохостинги Файловые хостинги (файлообменники)

№3 слайд
MIME MIME произн. майм ,
Содержание слайда: MIME MIME (произн. «майм», англ. Multipurpose Internet Mail Extensions — многоцелевые расширения интернет-почты) — спецификация для кодирования информации и форматирования сообщений таким образом, чтобы их можно было пересылать по Интернету. Формат MIME поддерживает передачу нескольких сущностей в пределах одного сообщения. Для обозначения множественного содержимого используются медиатипы, обозначающие составные типы данных: multipart/*.

№4 слайд
Некоторые MIME-типы
Содержание слайда: Некоторые MIME-типы Внутренний формат прикладной программы: application/json: JavaScript Object Notation JSON application/javascript: JavaScript application/octet-stream: двоичный файл без указания формата application/ogg: Ogg application/pdf: Portable Document Format, PDF application/postscript: PostScript application/xhtml+xml: XHTML application/zip: ZIP application/x-gzip: Gzip

№5 слайд
Некоторые MIME-типы Аудио
Содержание слайда: Некоторые MIME-типы Аудио: audio/mp4: MP4 audio/mpeg: MP3 или др. MPEG audio/ogg: Ogg Vorbis, Speex, Flac или др. аудио audio/vnd.wave: WAV Видео: video/mpeg: MPEG-1 video/mp4: MP4 video/ogg: Ogg Theora или другое видео video/quicktime: QuickTime video/x-flv: FLV

№6 слайд
Некоторые MIME-типы
Содержание слайда: Некоторые MIME-типы Изображения: image/gif: GIF image/jpeg: JPEG image/pjpeg: JPEG image/png: Portable Network Graphics image/svg+xml: SVG image/tiff: TIFF

№7 слайд
Причины появления MIME MIME
Содержание слайда: Причины появления MIME MIME расширяет функционал электронной почты (а впоследствии и протокола HTTP) для поддержки: Текстовых данных в кодировках, отличных от ASCII Не текстовых вложений Тел заголовков с множественным содержимым

№8 слайд
Множественное содержимое
Содержание слайда: Множественное содержимое Множественное содержимое (Multipart Content) – наличие больше одного типа данных в едином теле запроса. Перед каждой порцией содержимого обязан быть разделитель (boundary), представляющий собой случайный набор символов латиницы. Наименование разделителя указывается в заголовке Content-Type в основном заголовке запроса.

№9 слайд
Множественное содержимое
Содержание слайда: Множественное содержимое Subject: = Тема письма Content-Type: multipart/mixed; boundary="----==--bound.402108.web37j.yandex.ru" ------==--bound.402108.web37j.yandex.ru Content-Transfer-Encoding: 8bit Content-Type: text/html; charset=utf-8 <div>Текст письма в HTML</div> ------==--bound.402108.web37j.yandex.ru Content-Disposition: attachment; filename=“notation.svg" Content-Transfer-Encoding: base64 Content-Type: image/svg+xml; name="notation.svg" PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5…

№10 слайд
Множественное содержимое POST
Содержание слайда: Множественное содержимое POST /send-message.html HTTP/1.1 Host: webmail.example.com Referer: http://webmail.example.com/send-message.html User-Agent: BrowserForDummies/4.67b Content-Type: multipart/form-data; boundary=Asrf456BGe4h Content-Length: (суммарный объём, включая дочерние заголовки) Connection: keep-alive Keep-Alive: 300 (пустая строка) (отсутствующая преамбула) --Asrf456BGe4h Content-Disposition: form-data; name="DestAddress" (пустая строка) brutal-vasya@example.com --Asrf456BGe4h Content-Disposition: form-data; name="MessageTitle" (пустая строка) Я негодую

№11 слайд
Атрибут enctype у форм
Содержание слайда: Атрибут enctype у форм Определяет способ кодирования данных формы при их отправке на сервер. Обычно устанавливать значение атрибута enctype не требуется. Однако если используется поле для отправки файла (input type="file"), следует определить атрибут enctype как multipart/form-data.

№12 слайд
Атрибут enctype у форм
Содержание слайда: Атрибут enctype у форм application/x-www-form-urlencoded Вместо пробелов ставится +, символы в нестандартных кодировках (например на кириллице) кодируются их шестнадцатеричными значениями (например, %D0%90%D0%BD%D1%8F вместо Аня). multipart/form-data Данные не кодируются. Это значение применяется при отправке файлов. text/plain Пробелы заменяются знаком +, буквы и другие символы не кодируются.

№13 слайд
Multipart-формы Загрузка
Содержание слайда: Multipart-формы Загрузка файлов на сервер осуществляется с помощью multipart-формы, в которой есть поле загрузки файла. В качестве атрибута enctype указывается значение multipart/form-data.

№14 слайд
Поле для ввода файла HTML-код
Содержание слайда: Поле для ввода файла HTML-код поля для ввода имени файла, который будет загружен на Web-сервер выглядит так: <input type="file" name="myFile"> В браузере будет отображаться так:

№15 слайд
Общий вид формы загрузки
Содержание слайда: Общий вид формы загрузки файла <form action="upload.php" method="POST" enctype="multipart/form-data"> <!— Поле MAX_FILE_SIZE должно быть указано до поля загрузки файла --> <input type="hidden" name="MAX_FILE_SIZE" value="30000"> <!– Название элемента input определяет имя в массиве $_FILES --> <input type="file" name="myFile"> <input type="submit" value="Загрузить"> </form>

№16 слайд
Обработка файла на сервере
Содержание слайда: Обработка файла на сервере PHP-интерпретатор, получив файл на сервере, сохраняет его во временную директорию (обычно /tmp, но зависит от типа ОС и настроек PHP). Во временной директории файл хранится под новым уникальным именем. После завершения работы скрипта, временный файл будет удалён.

№17 слайд
Индексы массива FILES myFile
Содержание слайда: Индексы массива $_FILES[‘myFile’] Для каждого файла в среде PHP создаётся глобальный массив $_FILES[имя_файлового_поля], в котором существует 5 индексов. $_FILES['myFile']['name'] - имя файла до его отправки на сервер, например, pict.gif; $_FILES['myFile']['size'] - размер принятого файла в байтах; $_FILES['myFile']['type'] - MIME-тип принятого файла (если браузер смог его определить), например: image/gif, image/png, image/jpeg, text/html; $_FILES['myFile']['tmp_name'] - содержит имя файла во временном каталоге, например: /tmp/phpV3b3qY; $_FILES['myFile']['error'] - Код ошибки, которая может возникнуть при загрузке файла. Ключ ['error'] был добавлен в PHP 4.2.0. С соответствующими кодами ошибок вы можете ознакомиться здесь.

№18 слайд
Директивы конфигурационного
Содержание слайда: Директивы конфигурационного файла php.ini file_uploads - Разрешать или не разрешать закачивание файлов; upload_tmp_dir string - Временная директория, используемая для хранения файлов во время закачивания. Должна быть доступна для записи пользователю, от имени которого запущен PHP. Если не указана, используется директория по умолчанию для вашей системы; upload_max_filesize - Максимальный размер закачиваемого файла; max_file_uploads - Максимально разрешенное количество одновременно закачиваемых файлов; post_max_size - Устанавливает максимально допустимый размер данных, отправляемых методом POST. Это значение также влияет на загрузку файлов. Для загрузки больших файлов это значение должно быть больше значения директивы upload_max_filesize;

№19 слайд
Перемещение временного файла
Содержание слайда: Перемещение временного файла bool move_uploaded_file(string $filename, string $destination) Функция проверяет, является ли файл filename загруженным на сервер (переданным по протоколу HTTP POST). Если файл действительно загружен на сервер, он будет перемещён в место, указанное в аргументе destination.

№20 слайд
Скрипт загрузки файла lt ?php
Содержание слайда: Скрипт загрузки файла <?php $uploadfile = dirname(__FILE__).”/”.basename($_FILES['myFile']['name']); echo '<pre>'; if (move_uploaded_file($_FILES['myFile']['tmp_name'], $uploadfile)){ echo "Файл корректен и был успешно загружен.\n"; } else{ echo "Возможная атака с помощью файловой загрузки!\n"; } echo 'Некоторая отладочная информация:'; print_r($_FILES); print "</pre>"; ?>

№21 слайд
Загрузка нескольких файлов lt
Содержание слайда: Загрузка нескольких файлов <form action="" method="post" enctype="multipart/form-data"> <p>Изображения: <input type="file" name="pictures[]" /> <input type="file" name="pictures[]" /> <input type="file" name="pictures[]" /> <input type="submit" value="Отправить" /> </p> </form>

№22 слайд
Загрузка нескольких файлов lt
Содержание слайда: Загрузка нескольких файлов <?php foreach  ($_FILES["pictures"]["error"] as $key => $error)  { if ($error == UPLOAD_ERR_OK)  { $tmp_name = $_FILES["pictures"]["tmp_name"][$key];    $name = $_FILES["pictures"]["name"][$key];    move_uploaded_file($tmp_name, "data/$name"); } } ?>

№23 слайд
Функции для работы с файлами
Содержание слайда: Функции для работы с файлами

№24 слайд
Функция basename string
Содержание слайда: Функция basename string basename ( string $path [, string $suffix ] ) При передаче строки с путем к файлу или каталогу, данная функция вернет последний компонент имени из данного пути. Если компонент имени заканчивается на $suffix , то он также будет отброшен.

№25 слайд
Функция basename lt ?php echo
Содержание слайда: Функция basename <?php echo "1) ".basename("/etc/sudoers.d", ".d").PHP_EOL; echo "2) ".basename("/etc/passwd").PHP_EOL; echo "3) ".basename("/etc/").PHP_EOL; echo "4) ".basename(".").PHP_EOL; echo "5) ".basename("/"); ?> Результат выполнения: sudoers passwd etc .

№26 слайд
Функция dirname string
Содержание слайда: Функция dirname string dirname ( string $path ) Получив строку, содержащую путь к файлу или каталогу, функция возвратит родительский каталог данного пути. <?php echo "1) " . dirname("/etc/passwd") . PHP_EOL; // 1) /etc echo "2) " . dirname("/etc/") . PHP_EOL; // 2) / (или \ на Windows) echo "3) " . dirname("."); // 3) . ?>

№27 слайд
Функция realpath string
Содержание слайда: Функция realpath string realpath ( string $path ) Раскрывает все символические ссылки, переходы типа '/./', '/../' и лишние символы '/' в пути path, возвращая канонизированный абсолютный путь к файлу. <?php chdir('/var/www/'); echo realpath('./../../etc/passwd'); ?> Результат: /etc/passwd

№28 слайд
Функция unlink bool unlink
Содержание слайда: Функция unlink bool unlink (string $filename [, resource $context ] ) Удаляет файл filename. Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

№29 слайд
Функции прав доступа, групп и
Содержание слайда: Функции прав доступа, групп и владельцев

№30 слайд
Переменная mode у функции
Содержание слайда: Переменная $mode у функции chmod <?php chmod("/somedir/somefile", 755);    // десятичное, скорее всего, указано неверно chmod("/somedir/somefile", "u+rwx, go+rx");  // строка, неверный способ chmod("/somedir/somefile", 0755);   // восьмеричное, верный способ ?>

№31 слайд
Функция opendir resource
Содержание слайда: Функция opendir() resource opendir ( string $path  [, resource $context]) Открывает дескриптор каталога для последующего использования c функциями  closedir(),  readdir() и rewinddir(). Возвращает дескриптор каталога (resource) в случае успеха или FALSE в случае ошибки.

№32 слайд
Функция readdir string
Содержание слайда: Функция readdir() string readdir ([ resource $dir_handle ] ) Возвращает имя следующего по порядку элемента каталога. Элементы возвращаются в том порядке, в котором они хранятся в файловой системе. Возвращает имя элемента каталога в случае успеха или FALSE в случае возникновения ошибки. Эта функция может возвращать как boolean FALSE, так и не-boolean значение, которое приводится к FALSE. Используйте оператор === для проверки значения, возвращаемого этой функцией.

№33 слайд
Функция closedir void
Содержание слайда: Функция closedir() void closedir ([ resource $dir_handle ] ) Закрывает поток, связанный с каталогом и переданный в качестве параметра dir_handle. Перед использованием данной функции, поток должен быть открыт с помощью функции opendir().Возвращает имя элемента каталога в случае успеха или FALSE в случае возникновения ошибки.

№34 слайд
Пример открыть каталог,
Содержание слайда: Пример: открыть каталог, считать файлы <?php $dir = "/etc/php5/"; // Открыть известный каталог и начать считывать его содержимое if (is_dir($dir)) {   if ($dh = opendir($dir)) {     while (($file = readdir($dh)) !== false) {       echo "файл: " . $file; echo " тип: ". filetype($dir . $file) . "\n";     }     closedir($dh);   } } ?>

№35 слайд
Результатом выполнения
Содержание слайда: Результатом выполнения данного примера будет что-то подобное: файл: . тип: dir файл: .. тип: dir файл: apache тип: dir файл: cgi тип: dir файл: cli тип: dir

№36 слайд
Объяснение сообщений об
Содержание слайда: Объяснение сообщений об ошибках  PHP возвращает код ошибки наряду с другими атрибутами принятого файла. Он расположен в массиве, создаваемом PHP при загрузке файла, и может быть получен при обращении по ключу error. Другими словами, код ошибки можно найти в $_FILES['userfile']['error'].

№37 слайд
UPLOAD ERR OK Значение Ошибок
Содержание слайда: UPLOAD_ERR_OK Значение: 0; Ошибок не возникло, файл был успешно загружен на сервер.

№38 слайд
UPLOAD ERR INI SIZE Значение
Содержание слайда: UPLOAD_ERR_INI_SIZE Значение: 1; Размер принятого файла превысил максимально допустимый размер, который задан директивой upload_max_filesize конфигурационного файла php.ini.

№39 слайд
UPLOAD ERR FORM SIZE Значение
Содержание слайда: UPLOAD_ERR_FORM_SIZE Значение: 2; Размер загружаемого файла превысил значение MAX_FILE_SIZE, указанное в HTML-форме.

№40 слайд
UPLOAD ERR PARTIAL Значение
Содержание слайда: UPLOAD_ERR_PARTIAL Значение: 3; Загружаемый файл был получен только частично.

№41 слайд
UPLOAD ERR NO FILE Значение
Содержание слайда: UPLOAD_ERR_NO_FILE Значение: 4; Файл не был загружен.

№42 слайд
UPLOAD ERR NO TMP DIR
Содержание слайда: UPLOAD_ERR_NO_TMP_DIR Значение: 6; Отсутствует временная папка. Добавлено в PHP 5.0.3.

№43 слайд
UPLOAD ERR CANT WRITE
Содержание слайда: UPLOAD_ERR_CANT_WRITE Значение: 7; Не удалось записать файл на диск. Добавлено в PHP 5.1.0.

№44 слайд
UPLOAD ERR EXTENSION Значение
Содержание слайда: UPLOAD_ERR_EXTENSION Значение: 8; PHP-расширение остановило загрузку файла. PHP не предоставляет способа определить, какое расширение остановило загрузку файла; в этом может помочь просмотр списка загруженных расширений с помощью phpinfo(). Добавлено в PHP 5.2.0.

№45 слайд
Лабораторная работа .
Содержание слайда: Лабораторная работа 1. Написать скрипт, позволяющий загружать несколько файлов в текущую директорию на сервере. Выбрать MIME-тип содержимого и максимальный размер. 2. Создать скрипт для вывода файлов на экран с возможностью удаления любого файла. 3. Предусмотреть защиту от взлома.

Скачать все slide презентации Загрузка файлов по протоколу HTTP одним архивом: