Главная | Регистрация | Вход Приветствую Вас Гость | RSS
Меню сайта
Мини-чат
Пожертвование сайту
Опрос
Добавить ли на сайт шаблоны для Joomla, WordPress?
Всего ответов: 1210
Главная » 2008 » Октябрь » 11 » Загрузка файлов на сервер РНР
Загрузка файлов на сервер РНР
22:46
здесь будет рассмотрена загрузка файлов на сервер по протоколу HTTP.
Рассмотрим два варианта конфигурации PHP:

register_globals=Off - параметры
передаваемые скрипту заносятся в массивы $_GET[], $_POST[], $_FILES[],
$_COOKIE[], ...
register_globals=On - все
параметры передаваемые скрипту, автоматически становятся
глобальными переменными и они также доступны через массивы $_GET[],
$_POST[], $_FILES[].

Upload файлов при register_globals=On

В этом случае параметры передаваемые скрипту становятся глобальными
переменными и кроме этого PHP также формирует массивы $_GET[], $_POST[],
$_FILES[]. При такой конфигурации вы можете выбирать как вам получить
доступ к передаваемым параметрам. Либо вы пользуетесь глобальными
переменными, либо получаете доступ через массивы $_GET[], $_POST[],
$_FILES[].

Здесь будем использовать глобальные переменные, а в
следующем разделе будем использовать массив $_FILES[].

Напишем HTML
форму для отправки файла на сервер.


Содержание формы (файл upload.html):

color=#800000><html>
<body>
<FORM
ENCTYPE="multipart/form-data" ACTION="myup.php"
METHOD=POST>
Выберете файл: <INPUT NAME="myfile"
TYPE="file">
<INPUT TYPE="submit"
VALUE="Загрузить">
</FORM>
</body>
</html>

После
того как пользователь выбрал имя файла и нажал кнопку Загрузить,
PHP помещает загружаемый файл во временную директорию указанную в
параметре upload_tmp_dir файла php.ini. В этой директории этот файл будет
храниться только во время запроса! После запроса PHP удалит этот временный
файл. Поэтому загружаемый файл нужно куда-нибудь переместить (если он вам
понадобиться в дальнейшем). Явно удалить временный файл можно функцией
unlink(string filename).

Так как в HTML форме мы написали <INPUT
NAME="myfile" TYPE="file">, то при запросе в скрипте у нас
будет глобальная переменная с именем $myfile.

Здесь рассмотрим загрузку текстового файла и вывод его содержимого.

Скрипт обработки:

// Загрузка файлов на сервер
//
Если register_globals=On

print("Имя файла на
нашем сервере (во время запроса):
".$myfile."
");
print("Имя файла на
компьютере пользователя:
".$myfile_name."
");
print("MIME-тип файла:
".$myfile_type."
");
print("Размер файла:
".$myfile_size."

");

//
Получаем содержимое файла
$fp =
fopen($myfile,"r");
$content = fread($fp,
filesize($myfile));
fclose($fp);

// Вывод содержимого
файла
print($content);
?>

Пояснения:

$myfile - имя временного файла, в котором находятся загруженные
данные;

Когда пользователь отправляет форму, PHP автоматически определяет ещё
несколько переменных:

$myfile_name - имя файла на компьютере компьютере
пользователя;

$myfile_type - MIME-тип файла.

$myfile_size - размер файла в байтах.

При загрузке текстовых файлов переменная $myfile_type = "text/plain",
при загрузке изображения gif переменная $myfile_type = "image/gif".

При register_globals=On можно пользоваться массивом $_FILES[]. Как им
пользоваться мы рассмотрим ниже.
Upload файлов при register_globals=Off

При register_globals=Off параметры передаваемые скрипту заносятся в
массивы $_GET[], $_POST[], $_FILES[]. В нашем случае нас интересует массив
$_FILES[]. В этом массиве храниться вся информация о всех загружаемых
файлах. В нашем случае структура этого массива следующая:

$_FILES["myfile"]["tmp_name"] - Имя временного
файла
$_FILES["myfile"]["name"] - Имя файла на компьютере
пользователя
$_FILES["myfile"]["size"] - Размер файла в
байтах
$_FILES["myfile"]["type"] - MIME-тип
файла
$_FILES["myfile"]["error"] - код ошибки.
CYBERGURU.RU

Категория: Исходники | Просмотров: 814 | Добавил: -=FoBoS=- | Рейтинг: 5.0/1 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Гость

Сообщения:

Группа:
Гости
Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!
Поиск по сайту
Календарь
«  Октябрь 2008  »
ПнВтСрЧтПтСбВс
  12345
6789101112
13141516171819
20212223242526
2728293031
Друзья сайта
3dnews daily digital digest
Наш баннер
[ Получить код баннера]
Облакто тегов

Для красивого отображения этого блока требуетсяFlash Player 9 или выше.

Кто сегодя был на сайте
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Зарегистрировано на сайте: 14962

Новых сегодня: 0

Новых вчера: 0

Новых за неделю: 0

Новых за месяц: 0

Из них:

Новоприбывших: 14923

Проверенных: 0

Модераторов: 1

Помошник администратора: 1

Администраторов: 1

Из них:

Парней 14327

Девушек 634

1

Каталог webplus.info Проверить PR ТИЦ
Все материалы которые находятся на этом сайте могут быть использованы исключительно в ознакомительных целях! За любое нелегальное использования данных материалов ни администрация сайта ни хостинг-провайдер ответственности не несут! При копировании материала обязательно указывать рабочую ссылку на alltopc.ucoz.ru! Created by -=FoBoS=- © 2008-2024