Как делать UPLOAD файлов на сервер и о возможных глюках.

www.karman.com.ua
портал о хостинге в Украине
Хостинг + Украина = Karman.com.ua

Сайт от А до Б

/

Основы сайта

/

Интересные скрипты

/

Изучаем PHP

/

Как заработать на сайте

/

Раскрутка сайта

/

CMS


Как делать UPLOAD файлов на сервер и о возможных глюках. 

Еще по теме:
  Конструктор серверов. Первым трем заказавшим - сервер в подарок*!
  сервера и география - есть ли оптимальное решение?
  VPS сервера от "МОЙ хостинг"
  Предлагаем новую линейку выделенных серверов
  Хостинг выделенных игровых серверов
  Загрузка файлов по http
  хостинг файлов на сoolshare.com.ua
  Основы серверного JavaScript

Что такое FILE UPLOAD?

Это возможность передать файлы с компьютера посетилеля в вашу ПХП программы. Это значит, вы получаете файл(ы) от посетителя и что-либо с ними делаете:

1. Отправка файла

Создайте файл upload.html такого содержимого:




Имя файла:

(нажмите кнопку ОБЗОР, затем ОТПРАВИТЬ)

Получится пустая html-страница, содержащая форму: поле для ввода имени файла (ничего вводить не надо!), кнопку ОБЗОР, которая открывает окошко для выбора файла, кнопка ОТПРАВИТЬ - отправка формы на сервер.

Действия посетителя:

  • юзер нажимает обзор, выбирает файл(ы)
  • юзер нажимает отправить

"Программер" (вы) можете подредактировать

  • поле ACTION="upload2.phtml" (имя php-программы, принимающей файл)
  • поле name="MAX_FILE_SIZE" value="1000" - размер максимально допустимого размера файла для аплода.

2. Прием и использование

Ваша программа на php (в файле upload2.phtml), чтобы получить отправленный файл НЕ ДОЛЖНА НИЧЕГО ДЕЛАТЬ! Все само! Радуйтесь, товарищи :-)

Перед началом выполнений вашей программы сервер принимает файл, а ПХП-процессор сообщает имя временно файла (переменная $userfile), в котором храниться только что полученный файл. Поэтому вам нужно лишь открыть файл на чтение и считать содержимое. Даже стирать этот временный файл не надо.

Как вывести upload'еный файл на экран? Вот программа (ее надо записать в файл upload2.phtml )

echo "

Вы загрузили файл размером:
$userfile_size байт

На вашем компьютере файл назывался:
$userfile_name

На нашем сервере ваш файл был записан для временного храниения
по адресу и под именем:
$userfile

Ниже его содержимое:
:

";

// для тех, кто не знает, команда echo implode("",file("имя_файла"));
// выводит содержимое "имя_файла" на экран

echo implode("",file($userfile));

?>

3. О глюках

Попробуйте аплодить таким способом на сервер бинарные файлы. Скорее всего файлы окажутся "битыми": фотки не будут показываться, программы не запустяться, архивы не распакуются. Текстовые файлы (почти точно) не повредяться. Дело в том, что Русский Апач (ваш веб-сервер) перекодирует все подряд. Например, символ с кодом 0х00 он заменяет на пробел (символ с кодом 0х20). Чтобы выключить эту ненужную перекодировку, допишите в файл httpd.conf из каталога Апача (/usr/local/apache) следующие строки. Если у вас нет доступа к этому файлу и админ сервера не может сделать это за вас, ткните его в эти строки.


CharsetRecodeMultipartForms Off

Строку CharsetRecodeMultipartForms Off можно добавлять в разные места (один раз). Если вы совсем начинающий пользователь и не решите сами, куда писать эту строку, будьте аккуратнее при решении задачи методом тыка.


Чтобы обсудить это в форуме, нажмите здесь.


Хостинг-источник: http://karman.com.ua, http://www.designer.kulichki.net/articles/php/1.html
  О личных виртуальных серверах (VPS)
  Ищу VPS или Выделенный сервер
Есть вопросы о хостинге и о сайтах?
и получи ответ от профессионалов, которые обожают помогать людям :).
Еще по теме:
  портал, который работает на выделенном сервере компании HostPro
  проблемы с заливкой файлов
  Администрирование серверов
  Сдается dedicated сервер в Украине (срочно).
  Выделенные сервера (dedicated) размещение в New Jersey
  Прошу совет какой арендовать сервер и где
  Вебсайты, доменные имена, и серверы имен (Что такое DNS?)...
  Создание чата, как увеличивается нагрузка на сервер
  Посоветуйте Хостинг для подкачки файлов!
  Спец.предложения по аренде серверов.
  Виртуальный выделенный сервер VPS VDS Linux от 8 уе в месяц!
  Что такое DNS-сервер и как он работает
  Использование полного административного доступа на выделенный Windows сервер

© СПД Праведно-Счастливый Аладдин Ярославович, 2004-2008. Все права защищены. При цитировании материалов ссылка на www.karman.com.ua обязательна. Редакция "Кармана" может не разделять точку зрения авторов статей, сообщений и ответственности за их содержание не несет.

Быстрый переход к содержимому сайта Karman.com.ua:
Новости, советы, углубленные знания, знания для новичков, законодательство, интересные скрипты, фотогалереи, отчеты, статьи о хостинге: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24
Часто задаваемые общие вопросы о хостинге, про FTP, PHPMyAdmin и MySQL, CPanel, Предустановленные скрипты, WHM, Cron, .htaccess, SSH, Паролирование директорий, О доменах, о работе с сайтом, о Раскрутке сайта, об Электронной почте, про Основы web-программирования: 0, 1
Энциклопедия основных терминов хостинга, программного обеспечения, железной стороны хостинга, технологий, электронной почты и доменов: 0, 1, 2, 3, 4, 5, 6
Сайты о хостинге (форумы, хостинг-провайдеры, студии веб-дизайна, домен-регистраторы, инструментарии в помощь вебмастеру): 0, 1, 2

Rambler's Top100